QtScrcpy 安卓投屏控制:35ms 延迟下的键鼠映射与多机群控实操
【免费下载链接】QtScrcpyAndroid real-time display control software项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy
QtScrcpy 是基于 scrcpy 重构的安卓投屏软件,通过 USB 或 WiFi 把手机画面实时搬到电脑,键鼠直接操控,延迟 35~70ms,覆盖 Windows、macOS、Linux,全程无需 root。
它和同类工具差在哪
原版 scrcpy 是纯命令行工具,窗口之外什么都没有。QtScrcpy 用 Qt 重写了界面,把设备管理、按键映射、多机群控都收进一个面板,后两项是原版没有的能力。核心指标不变:延迟 35~70ms,首帧 1 秒内可见,手机上不装任何 App,启动时只往/data/local/tmp/推一个scrcpy-server.jar。
从零到画面亮起来
拿到程序,三条路任选:下载对应平台的预编译包,解压即用;Arch Linux 执行yay -Syu qtscrcpy;从源码构建,git clone --recurse-submodules https://gitcode.com/GitHub_Trending/qt/QtScrcpy,再配好 Qt 5.12+ 环境编译。
手机侧准备,这一步漏掉会导致"能看画面但点不动":
- 设置 → 关于手机 → 版本号连点 7 次,解锁开发者选项
- 开发者选项中开启 USB 调试
- 打开 USB 调试(安全设置)——小米机型的模拟点击权限藏在这里
- 插上数据线,手机弹窗选"允许调试"
USB 直连:打开程序 → 点刷新设备,看到序列号 → 点启动服务,3 秒内出画面。
无线连接(需先用 USB 建立信任):
- 手机与电脑连同一局域网
- 保持 USB 连接,点"获取设备 IP"
- 点"启动 adbd"
- 点"无线连接",再刷新设备列表
- 选中 IP 地址开头的设备
- 点"启动服务",拔线
adbd 跑起来后,插不插线都不影响,除非它被停掉。
动手玩——从单台到多台
基础投屏控制:画面亮起来后,键鼠就是手机的遥控器。Ctrl+F全屏,Ctrl+O息屏保持投屏,右键双击唤屏或返回。任意文件拖进投屏窗口,直接落到手机/sdcard/;拖 apk 进去直接安装。Ctrl+C把设备剪贴板拉到电脑,Ctrl+Shift+V反向注入设备(后者走文本事件,不支持非 ASCII 字符,发中文用前者)。启动配置里还能调比特率、分辨率,勾选"仅后台录制"只录不显示窗口,适合挂机留档。
自定义操作映射:给别的游戏做映射,规则在 docs/KeyMapDes_zh.md。核心两点:坐标全用 0~1 相对值,鼠标左键点一下画面,控制台直接打印当前pos,抄过来就能用;keyMapNodes支持 5 种类型——单击、双击、多点连击、拖拽、方向盘。keymap/目录自带 gameforpeace.json:
"keyMapNodes": [ { "type": "KMT_CLICK", "key": "Key_Space", "pos": { "x": 0.96, "y": 0.7 } }, { "type": "KMT_STEER_WHEEL", "centerPos": { "x": 0.16, "y": 0.75 }, "upKey": "Key_W", "downKey": "Key_S" } ]操作路径固定五步:启动服务 → 点"刷新脚本"扫描keymap/→ 下拉选配置 → 点"应用脚本" → 按~切入映射模式,再按一次切回。打和平精英记得把载具设成单摇杆模式,否则方向盘映射会和游戏自带逻辑打架;上下车会新建界面导致触摸点失效,目前最稳的恢复办法是连按两次~。
多设备协同:设备列表里勾选要联动的设备,启用群控,在任意主控窗口操作,其余设备同步执行。USB 和 WiFi 可以混插。电商批量操作、游戏兼容性测试、教学演示都靠它,实现入口在 QtScrcpy/groupcontroller/。
让它更顺手的几个参数
配置文件在 config/config.ini,真正影响体验的就这几个:
UseDesktopOpenGL— 视频解码方式 —-1自动,显卡渲染报错时改1或2各试一轮MaxFps— 最大帧率 —0不限制(仅 Android 10+),比赛场景顶到 60RenderExpiredFrames— 跳过过期帧 —0进一步压低延迟PushFilePath— 拖拽文件落点 — 默认/sdcard/,可改
[common] UseDesktopOpenGL=-1 MaxFps=0 RenderExpiredFrames=0 PushFilePath=/sdcard/改动后重启服务才生效。
连不上 / 卡了 / 显示不对
| 现象 | 最可能原因 | 快速解法 |
|---|---|---|
| 刷新设备列表为空 | 驱动或信任未建立 | 先用任意手机助手连一次,再刷新 |
| adb server version doesn't match | 电脑里多版本 adb 冲突 | 任务管理器杀掉 adb 进程,或在 config.ini 设AdbPath |
| 能控制但看不到画面 | 显卡不支持当前渲染方式 | UseDesktopOpenGL改 1 或 2 各试一轮 |
| Could not open video stream | 分辨率过高 | 启动配置里调低一档分辨率 |
| 能看画面但点不动 | 未开模拟点击权限 | 打开 USB 调试(安全设置) |
| 中文打不进去 | 手机端无中文输入法 | 装搜狗或 QQ 输入法并设为默认,重连 |
还不行?把控制台日志贴到 docs/FAQ.md 对照排查,几乎每条都写明原因。
第一周先把 USB 投屏、文件拖拽、剪贴板三样用熟,第二周再上按键映射和群控。参数按自己的网络微调,网络投屏反而要降分辨率保稳定。
【免费下载链接】QtScrcpyAndroid real-time display control software项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考