52 lines
1.5 KiB
Protocol Buffer
52 lines
1.5 KiB
Protocol Buffer
syntax = "proto3";
|
||
|
||
package com.ttstd.control;
|
||
|
||
option java_package = "com.ttstd.control";
|
||
option java_multiple_files = true;
|
||
|
||
// 控制指令类型,对应原 JSON 字段 action。
|
||
enum Action {
|
||
ACTION_UNKNOWN = 0;
|
||
TOUCH = 1;
|
||
SWIPE = 2;
|
||
KEY = 3;
|
||
LONG_PRESS = 4;
|
||
MOTION_EVENT = 5;
|
||
SET_RESOLUTION = 6; // 控制端请求被控端切换屏幕采集分辨率
|
||
REPORT_RESOLUTION = 7; // 被控端上报当前实际采集分辨率(含连接建立后的初始值)
|
||
}
|
||
|
||
// 通过 RTCDataChannel 传输的控制指令(protobuf 二进制)。
|
||
// 坐标 x/y/x1/y1/x2/y2 均为相对屏幕的百分比,取值范围 0.0 ~ 1.0。
|
||
message ControlMessage {
|
||
// 指令类型
|
||
Action action = 1;
|
||
|
||
// 单点坐标(TOUCH / LONG_PRESS / MOTION_EVENT)
|
||
double x = 2;
|
||
double y = 3;
|
||
|
||
// 滑动起止坐标(SWIPE)
|
||
double x1 = 4;
|
||
double y1 = 5;
|
||
double x2 = 6;
|
||
double y2 = 7;
|
||
int64 duration = 8;
|
||
|
||
// 按键(KEY):key_action 0=按下 1=抬起(对应 Android KeyEvent ACTION_DOWN/UP)
|
||
int32 key_code = 9;
|
||
int32 key_action = 10;
|
||
|
||
// 原始动作(MOTION_EVENT):对应 Android MotionEvent ACTION_*(0=DOWN 1=UP 2=MOVE)
|
||
int32 motion_action = 11;
|
||
|
||
// 分辨率切换(SET_RESOLUTION):
|
||
// width 为目标长边/宽度;<=0 表示使用被控端原始(native)分辨率。
|
||
// height 为目标高度;<=0 时按被控端屏幕宽高比基于 width 计算(保留原始比例)。
|
||
// fps 为目标帧率;<=0 表示沿用当前帧率。
|
||
int32 width = 12;
|
||
int32 height = 13;
|
||
int32 fps = 14;
|
||
}
|