TC软件设计文件
作者:狼就是鲸鱼
时间:2021-16-27
一、项目需求
1,每组可以连接100台手机(需要PC硬件显卡支持)
2,支持群控
3,支持手机的基本操作
4,可以批量安装apk包
5,支持中文输入法
6,支持脚本运行
7,部署环境:Windows和Ubuntu
8,USB直连
项目周期:一个月
二、需求分析
1、已有QtScrcpy项目参考,不需要从头做系统设计,项目周期可以缩短。
2、需要有C++、java、UI界面、音视频开发技能。
3、群控、手机的基本操作、安装apk、中文输入、脚本控制、USB连接逻辑在QtScrcpy中都已经实现。
4、需要重新开发UI界面,将手机屏幕显示界面从独立的界面合并到同一个主界面中。
5、需要连接USB hub。
6、需要缩放手机屏幕,缩放屏幕后需要对鼠标和手机屏幕的映射适配正常,需要和电脑屏幕大小适配将不同手机画面放在合适的位置。
7、实际群控时,可以将一个界面放大显示,其它界面缩小后铺满其它的空间。
8、所有增加视频推流合并的模块,做多图层显示。
三、竞品分析
侠客版本:用服务器abd做连接,再需要一台电脑通过网络做传输,效率低。
其它版本:无法获取到源码。
四、项目计划
第一步,将设备ui移到主ui,在主ui中显示一个手机窗口,不再重新弹出窗口
第二步,将一个手机窗口拷贝成96个窗口,并缩小窗口,依然保证交互正常
第三步,在主ui中连接多个设备,并保证交互正常
第四步,将主ui的菜单做到左侧竖排和隐藏菜单,并让主界面能全屏
第五步,将手机窗口的配置操作融合到主ui中
第六步,增加按手机个数动态排列手机窗口
第七步,增加手动配置菜单哪些项显示哪些项隐藏
第八步,ui上可以设置一个主要显示的手机大界面,其它的为统一的小界面
一、概要设计
1、系统框图
2、模块功能
3、系统流程图
暂略。
手机设备端执行server,PC主机端执行client。
PC端捕捉鼠标和键盘,将命令发到手机端执行。
手机录屏h264流,PC端无缓存立即显示。
TCP 5005端口是调试端口。
当前不支持声音。
视频流线程收到一帧后马上通知主线程显示,不做缓存和时间控制。
4、UI设计示意图
主界面布局如图:
六、详细设计
见详细设计文档。