
不知道是不是人们都觉得用的起 macOS 的都买得起 iPad 啊,一直都没有可以在 Apple M1 系上实现 Android 平板作为扩展屏的方案
(咩咩买 mac 是工作需要,靠这电脑吃饭的,花了 13899 虽然非常贵但是没办法,咩咩没有钱)
使用任何设备(只要有浏览器),作为 mac 的副屏/镜像(实现 Apple 官方随航的功能),不限制平台,黑苹果也可以用的,依赖 ffmpeg ,其他系统都自带了
基于之前手搓的 http 服务 httpRandomMusic ,
这个项目实现了实时音频转码,实现了小爱音响播放音乐的自由(可以让单片机级别配置的小爱 play 增强版播放本地 nas 音乐)
写这东西主要是为了实现将之前买的辣鸡 Chromebook Duet 作为 mac 的副屏用,实现“将 Android 平板用作 Mac 的第二台显示器”,类似于 Windows 端 spacedesk 的功能,因为使用浏览器作为客户端,对目标设备没有限制,就算没有浏览器也可以直接使用视频播放器打开视频流
实测 M1 Pro 在 mjpg 情况下 3k 分辨率 60hz 只有 100ms 延迟

目前已支持在浏览器使用 mjpg 和 vp8 串流,h264 和 hevc 浏览器兼容性问题还没调好,播放器可以正常播放
Github 仓库: https://github.com/zanjie1999/meDisplay
演示视频: https://www.bilibili.com/video/BV1Qf25YQEj4?p=2
1 Lowlife 2024-10-08 11:40:46 +08:00 via Android 这真不错 |
2 ZTom 2024-10-08 11:48:53 +08:00 挺好 |
3 nenosyyan 2024-10-08 12:10:59 +08:00 群友打卡 |
4 wsbqdyhm 2024-10-08 12:20:28 +08:00 留着备用。 |
5 jccaipc 2024-10-08 14:42:59 +08:00 收藏 |
6 yanyuechuixue 2024-10-08 15:42:09 +08:00 感谢! 支持! |
7 zanjie1999 OP 喜报,浏览器的 h264 和 hevc 串流实现了,3k 60hz 下延迟有 3 秒左右,相比 vp8 的 1 秒和 mjpg 的 100ms 还有很大的优化空间,不过没有使用 js ,mjpg 模式在 kindle 的浏览器下大概也是可用的 |
8 yanyuechuixue 2024-10-08 22:16:28 +08:00 我这边似乎延迟比较高,即便是用 mjpg 延迟也在 1s 左右。没有虚拟屏幕,就是直接 stream 的 macbook m1 pro 显示器。用的已经是 5G wifi 了,请问大概是怎么回事儿呢? |
9 BearCookie 2024-10-09 09:40:42 +08:00 这么好的 app 居然是免费的,谢谢楼主分享啊 |
10 barfi1316 2024-10-09 10:54:57 +08:00 之前有个老的 ipad 不支持随访,现在可以用起来了。 |
11 Anna1879 2024-10-09 13:46:13 +08:00 谢谢大佬 |
12 wxjback 2024-10-09 14:34:08 +08:00 我的老 IPAD 有用武之地了? |
13 vorabend 2024-10-09 14:45:52 +08:00 @yanyuechuixue 同 使用 mjpg 延迟很高 1s 多一点 不知道问题出在哪 |
14 zanjie1999 OP @yanyuechuixue 你可以尝试降低分辨率看看有没有帮助,打开 py 文件可以编辑分辨率限制,当然了路由的性能也是很重要的,我这用的 ipq6000 虽然设备是 5g wifi 的,但信号再差延迟也不会超过半秒,如果是 android 还可以用 usb 连接后用 adb 的端口转发功能实现有线传输 adb reverse tcp:65532 tcp:65532 这样可以直接在设备的浏览器上打开 http://127.0.0.1:65532 来访问电脑上的服务 |
15 zanjie1999 OP @vorabend 刚没 at 到,看上一条 |
16 luka77 2024-10-09 16:27:16 +08:00 问一下副屏上没有鼠标指针是怎么回事? |
17 zanjie1999 OP @luka77 如果你使用的不是最新版本,那确实有这个问题,最新版我把缺的参数加上了,因为最初我是在黑苹果上开发的,这个采集鼠标指针的参数在白的才有 |
18 zanjie1999 OP  这是串流的 14 寸 mac 的内置 3K 屏幕,分辨率宽度限制为 1920 ,占用 12m/s 带宽,延迟 133ms |
19 suitts 2024-10-10 09:54:48 +08:00 挺有意思的 |
20 zanjie1999 OP 做了一下 Windows 和 Linux(x11)的支持,可以快速在局域网进行无需客户端的屏幕镜像,比如说在开会的时候将屏幕画面镜像到没有 hdmi 输入功能的大屏触摸一体机上 |
21 arare 2024-10-10 13:16:26 +08:00 非常好,延迟可以接受 |
22 bgo 2024-10-10 22:13:15 +08:00 打卡 |
23 wanpp 2024-10-10 22:36:31 +08:00 请问 op IMac 可以给 mbp 随航吗? |
24 zanjie1999 OP @wanpp mac 投 mac 可以直接在显示设置的无线显示器上选吧,我黑苹果用的 intel 网卡没法 airplay ,我没试过,但 iPhone 可以 airplay 到 mbp 上 或者你直接用这个程序也行,反正显示端只要有个浏览器或者能打开 url 的视频播放器就行 |
25 wanpp 2024-10-11 13:16:56 +08:00 @zanjie1999 #24 谢谢 op 的回复,我有空去试试。主要 mac 投 mac 只能用通用控制,同一套键鼠,但是系统还是各自独立的,我只想作为一个显示器用 |
26 zanjie1999 OP 适配了 Safari 和 Firefox ,并且增加了自动旋转,因为发现了 ios 上的 Safari 原来不支持横屏( 6s ios15 , 就像 ipad os 不支持纵向分屏一样奇怪) 发现一个有意思的事情,mac 可以在 60hz 的视频流中实时复制显示的内容,并且只占用 100% cpu ,也就是一个核心 |
27 beyondgamp 2024-10-12 17:29:36 +08:00 能拿 windows 笔记本做 mac 的副屏吗? |
28 zanjie1999 OP @beyondgamp 当然可以,有浏览器就行 我感觉 Kindle 也可以,虽然那个浏览器内核很老 |
29 laris 2024-10-14 21:25:45 +08:00 BetterDummy 用哪个?我看上游收费了,有几个 fork 项目 不知道哪个 fork 项目支持自信的 macOS v15 如果能把手机做副屏还是很实用 |
30 zanjie1999 OP @laris 随便用一个,免费的功能就完全够用,或者自己插个 hdmi 诱骗器,我比较偏向于诱骗器,因为 BetterDummy 会影响待机,后续考虑自己实现一下虚拟显示器的事情,不过目前没有任何头绪,想做很久了,现在这个屏幕采集的方法还是写的那天晚上突然想到的,这程序就是这样弄了一晚写出来的 |
31 yangyp2 200 天前 测试了下 mac 自带的屏幕镜像(mac mini m4,雷电 4 连接到 imac 24,4K 镜像),手机拍摄延迟秒表大概在四十多毫秒,感觉就像 60 刷新率切换到 30 刷新率,用这个项目本地起服务,本地浏览器打开大概在 100 多,期待后续优化,(udp)会不会改善,询问 gpt,Http 的延迟挺大的 |
32 zanjie1999 OP @yangyp2 超强的兼容性与极致的性能不可兼得(比如能支持 kindle 自带浏览器,或是 mjpg 模式能兼容上古 ie),目前最大的延迟在于 mac 的屏幕采集,ffmpeg 调用的也是系统的屏幕采集 api ,分辨率越大,采集速度越慢,延迟也越高,压缩和传输到是挺快的 |