大侠阿木博客
大侠阿木博客

MUScrcpy,轻巧快速自动回连的Android手机投屏工具

做工具这件事,我一直有个很朴素的偏好:能小就别做大,能自动就别让用户多点一下。

Android 投屏也是如此。

很多时候,我们只是想把手机接到电脑上,看画面、做演示、调试设备,或者录一段操作过程。为这样一个简单需求安装体积庞大的手机助手、登录账号、等待服务启动,多少有点本末倒置。

所以我做了 MU投屏:一款面向 Windows 的迷你 Android 投屏启动器。

它基于优秀的开源项目 scrcpy,界面部分使用原生 Win32 C 编写。当前 2.3 版的 MUScrcpy.exe 只有约 144 KB。程序启动后会自动等待手机,设备一连接就开始投屏;数据线松动、手机重启或投屏进程退出,恢复连接后又会自动回来。

现在,MU投屏的源码也已经公开:

GitHub:daxiaamu/MUScrcpy

thum-6bf81783959448.png

为什么还要做一个 scrcpy 启动器?

scrcpy 本身已经非常优秀:延迟低、画面清晰、无需在手机里安装额外 App,也没有账号体系。但对不熟悉命令行的用户来说,下载、配置参数和判断连接状态仍然有一点门槛。

我想做的不是重新实现 scrcpy,而是把最常用的流程整理好:

  • 插上 USB,不用点“连接”,程序自己发现手机;
  • 自动读取设备信息,不必再敲 adb 命令;
  • 根据电脑和手机情况自动选择画质;
  • 常用开关放到界面上,点一下立即生效;
  • 设备掉线以后继续等待,回来后自动恢复投屏;
  • 出现问题时,底部日志能告诉你程序正在做什么。

说到底,MU投屏只负责把投屏前后的琐事变简单。真正的设备控制和音视频传输,依然由 scrcpy 完成。

轻巧:主程序约 144 KB

thum-74461783959444.png

MU投屏没有内嵌浏览器,也没有附带一整套重量级 UI 框架。界面使用原生 Win32 C 编写,并以优化、剥离符号的方式编译。最终得到的 2.3 版主程序约为 144 KB

小体积带来的感受很直接:双击就开,界面干脆,不需要先等一个庞大的运行环境加载完成。

当然,这里的 144 KB 指的是 MU投屏自己的界面与控制程序。实际投屏还需要 adb、scrcpy 及其音视频运行库。从 GitHub 源码运行时,只要下载官方 scrcpy Windows 发布包,并把其中的文件放入程序目录下的 bin 文件夹即可。

我更愿意把功能边界说清楚:MU投屏很小,是因为它专注于启动、管理和连接体验;成熟而复杂的投屏能力,则交给成熟的 scrcpy。

截图 2|144 KB 的迷你主程序
建议画面:MUScrcpy.exe 的 Windows 属性窗口,清晰显示文件大小;可与完整主界面拼成一张图。
建议文件名:images/muscrcpy-size.png
图片说明:原生 Win32 C 编写,MU投屏 2.3 主程序约 144 KB。

快速:连接后,投屏和信息读取同时开始

MU投屏打开后,不会让你先选设备、再点连接、再点开始。

程序会在后台持续检查 USB 调试设备。手机上线以后,投屏启动和设备信息读取会并行进行;型号、序列号、Android 版本、系统版本、A/B 槽位和内核版本等信息,也会通过多个后台任务同时查询。

这样做的目的并不复杂:先把画面尽快投出来,不让辅助信息挡住主流程。

界面始终可以正常响应,当前状态和 scrcpy 输出则会实时显示在日志区域。第一次使用时,即便忘记开启 USB 调试,看到“等待设备连接”的提示,也能马上知道应该检查哪里。

自动回连:拔了线,接回来继续投

自动回连是 MU投屏最核心、也是我最想强调的功能。

真实使用中,投屏很少永远一帆风顺。数据线可能被碰松,USB 接口可能短暂断开,调试中的手机也可能频繁重启。普通启动脚本在 scrcpy 退出后就结束了,下一次还要重新运行。

MU投屏会一直维护连接流程:

  1. 没有发现设备时,进入等待状态;
  2. 设备上线后,自动启动 scrcpy;
  3. 设备断开或 scrcpy 退出后,自动回到检测状态;
  4. 手机重新在线,投屏自动恢复。

整个过程不需要退出 MU投屏,也不用反复点击按钮。对刷机、系统调试、应用演示和长时间设备观察来说,这种“它自己会回来”的体验,比多几个花哨功能更实用。

截图 3|自动回连前后对比
建议画面:使用两张截图并排展示。左侧为“等待设备连接”,右侧为重新连接后的“正在投屏”;下方日志保留“准备重新连接”和“设备已连接”等记录。
建议文件名:images/muscrcpy-auto-reconnect.png
图片说明:USB 短暂断开后无需重启程序,设备恢复在线便会自动重新投屏。

五档画质,默认交给“自动”

不同电脑、手机和使用场景,对画质的要求并不一样。MU投屏提供五档选择:自动、流畅、均衡、高清和极致。

模式 参数 适合场景
自动 根据电脑处理器、内存和手机分辨率选择 不想折腾,日常直接使用
流畅 1280 / 30 FPS / 4 Mbps 老电脑、优先稳定
均衡 1920 / 45 FPS / 8 Mbps 日常操作、应用演示
高清 2560 / 60 FPS / 12 Mbps 更看重清晰度与流畅度
极致 原始分辨率 / 最高 120 FPS / 20 Mbps 高性能设备、高刷新率体验

默认的“自动”模式会参考电脑的处理器核心数、内存大小以及手机分辨率,在流畅、均衡和高清之间选择。手动切换画质后,MU投屏会自动重启 scrcpy 来应用新参数,不需要自己关掉旧窗口再重开。

如果手机编码器不支持目标帧率,scrcpy 会使用设备实际允许的最高帧率。

截图 4|五档画质选择
建议画面:展开画质菜单,完整展示自动、流畅、均衡、高清和极致五个选项。
建议文件名:images/muscrcpy-quality.png
图片说明:默认自动匹配,也可按设备性能和使用场景手动选择画质。

不堆功能,只保留投屏时真正会用的

除了连接和画质,MU投屏还提供了几项常用能力:

  • 保持亮屏:投屏期间避免手机自动休眠,并记住上一次选择;
  • 投屏置顶:让手机画面保持在其他窗口上方;
  • 兼容模式:遇到渲染或音频兼容问题时,改用软件渲染并关闭音频;
  • 熄屏检测与一键点亮:发现手机熄屏后,在电脑端直接发送点亮指令;
  • 窗口自动贴靠:scrcpy 窗口自动靠在控制界面旁边,并维持横向相邻;
  • 实时日志:显示设备等待、投屏启动、参数切换和重新连接过程。

更改画质、兼容模式、保持亮屏或投屏置顶时,程序会自动重启 scrcpy 让设置生效。用户只负责选择,剩下的流程由 MU投屏完成。

截图 5|设备信息与快捷功能
建议画面:突出设备信息卡片、保持亮屏、投屏置顶、兼容模式,以及熄屏后的“点亮屏幕”按钮。
建议文件名:images/muscrcpy-features.png
图片说明:常用状态与开关集中在一个界面,不需要记忆 scrcpy 和 adb 参数。

从 GitHub 开始使用

MU投屏源码现已公开在 GitHub:

https://github.com/daxiaamu/MUScrcpy

从源码仓库运行的步骤很简单:

  1. 下载官方 scrcpy Windows 版本
  2. 在 MU投屏程序目录创建 bin 文件夹;
  3. 将 scrcpy 发布包中的全部文件放入 bin
  4. 确认 bin\adb.exebin\scrcpy.exe 存在;
  5. 手机开启 USB 调试并连接电脑,然后运行 MUScrcpy.exe

想自己编译也不复杂。安装 MinGW-w64 后运行仓库中的 编译c.bat 即可,核心源码集中在 start_scrcpy_c.c,界面图标和版本信息位于资源文件中。没有庞大的工程结构,阅读和修改都比较直接。

如果你在使用中遇到问题,或者对功能有建议,欢迎通过 GitHub 仓库反馈。也欢迎对原生 Windows 开发、adb 或 scrcpy 感兴趣的朋友查看实现。

写在最后

MU投屏不是手机管家,也不打算成为一个塞满功能的平台。

它想做好的事情只有一件:用尽可能轻巧的方式,让 Android 手机快速出现在 Windows 桌面上,并在意外断开之后自己回来。

144 KB 的原生主程序、自动检测、连接即投、断线回连,再加上几项真正实用的设置——这就是 MU投屏现在的样子。

项目还会继续完善。如果它正好解决了你的投屏需求,欢迎到 GitHub 点个 Star,也欢迎把问题和想法留在仓库里。

项目: MU投屏
版本: 2.3
作者: 大侠阿木
源码: github.com/daxiaamu/MUScrcpy
更新页面: optool.daxiaamu.com/muscrcpy
开源基础: Genymobile/scrcpy

没有标签
首页      我的作品      MUScrcpy,轻巧快速自动回连的Android手机投屏工具

发表回复

textsms
account_circle
email

大侠阿木博客

MUScrcpy,轻巧快速自动回连的Android手机投屏工具
做工具这件事,我一直有个很朴素的偏好:能小就别做大,能自动就别让用户多点一下。 Android 投屏也是如此。 很多时候,我们只是想把手机接到电脑上,看画面、做演示、调试设备,或者录一…
扫描二维码继续阅读
2026-07-14