还在为 MacBook 屏幕太小、多任务效率低发愁?想把闲置的 iPhone 或 iPad 变成一块真正能拖窗口、支持触控、像素锐利的第二显示器,却不想被 Sidecar 的硬件限制卡住、不愿为 Duet Display 交月费、也不想买 Luna Display 的硬件狗?OpenDisplay 就是为此而生的开源答案——它不依赖 Apple ID、不限制设备型号、无需额外硬件,更关键的是:完全免费、代码公开、流量本地闭环,你的屏幕画面从不离开自己的设备。
核心功能
- 真·扩展显示,不是镜像:系统设置中可自由排列 iPhone/iPad 为独立显示器(左/右/上/下),直接拖拽窗口过去,支持 Mission Control、Spaces 和 Dock 自动识别,彻底告别“只能看不能操作”的伪副屏体验。
- USB 线直连,延迟低至 30ms 内:插上线即用,无需配对、不走 WiFi、不受路由器干扰;利用 macOS 原生 usbmuxd 通道传输 H.264 流,实测比 WiFi 模式快 2–3 倍,剪辑时间轴拖动、代码滚动、游戏辅助操作都跟得上手指节奏。
- WiFi 连接零配置自动发现:iPhone/iPad 端开启 App 后自动通过 Bonjour 广播自身,Mac 端下拉菜单秒选设备,只要同网、打开「本地网络」权限,3 秒完成连接——出差住酒店、临时换网络也不用重设。
- 原生 Retina / HiDPI 支持,文字锐利如本机:虚拟显示器分辨率严格匹配设备物理像素(如 iPhone 14 Pro 的 2556×1179 @2x),系统渲染字体、图标、UI 元素无缩放模糊,写文档、看代码、修图时细节清晰可见。
- 完整触控交互,像在用 macOS 触控板:单点 = 左键点击,长按拖拽 = 窗口移动/文件拖放,双指上下滑动 = 页面/文档自然滚动,甚至支持惯性回弹;后续还将接入 Apple Pencil,实现精准手写批注。
- 横竖屏自适应,旋转即切换显示方向:把 iPad 横放,它就是宽屏副屏;竖过来,立刻变成 2000+ 高度的“程序员竖屏”,系统自动重建虚拟显示器并同步排列位置,无需手动调分辨率或重启 App。
- 老 Mac 也能当接收端,废物利用不浪费:在旧 Mac(macOS 12+)上安装轻量级 OpenDisplay Receiver,即可让它作为纯显示终端,被其他 Mac 通过 Thunderbolt、以太网或 WiFi 推送画面,分辨率直达 Retina 级,完美替代淘汰的显示器。
- 全程离线,隐私由你掌控:所有视频编码、网络传输、输入注入均在本地完成,不上传任何画面到云端,不收集设备信息,不验证账户——关掉 WiFi、拔掉网线,照样 USB 正常工作。
技术亮点
- 硬编硬解全链路加速:Mac 端使用 VideoToolbox 框架启用 GPU 加速的 H.264 实时编码(禁用 B-帧 + 低延迟 profile),iOS 端用 AVSampleBufferDisplayLayer 高效解码渲染,绕过 CPU 软编瓶颈,保障 60fps 下稳定低延迟。
- 智能帧控与恢复机制:内置动态帧率调节与丢帧背压策略——当网络抖动或 USB 带宽不足时,主动丢弃非关键帧,但强制插入 I 帧确保快速恢复画面,避免长时间花屏或卡死。
- 深度集成 macOS 底层能力:基于 ScreencaptureKit 获取桌面流(取代已废弃的 deprecated APIs),通过 IOKit 创建虚拟显示设备(IOFramebuffer),再结合 Quartz Display Services 注册为系统级显示器,让 macOS 原生识别、分配 DPI 和缩放逻辑。
- 跨平台通信协议精简可靠:USB 模式复用苹果官方 usbmuxd 守护进程,无需 root 或驱动;WiFi 模式采用纯 TCP 连接(启用 TCP_NODELAY),握手快、包头小,比基于 HTTP/WebSocket 的方案更适配实时音画传输场景。
- Swift 全栈实现,安全可控:从 macOS App、iOS App 到底层视频管线,全部使用 Swift 编写,充分利用现代内存安全特性;关键模块如输入事件注入、DisplayLink 同步、H.264 参数协商均有详尽单元测试覆盖,代码可读性强,便于审计与二次开发。
适合哪些人用
OpenDisplay 不是极客玩具,而是真正解决生产力痛点的工具。它特别适合:
• 预算敏感的创意工作者:设计师、剪辑师、前端开发者,手头有闲置 iPhone 12+ 或 iPad Air 4+,想低成本扩展工作区,拒绝订阅制陷阱;
• 教育/办公场景灵活部署者:教师用 iPad 当课堂演示副屏,IT 管理员将旧 Mac 改造成教室共享显示器,学生用手机投屏做小组协作白板——所有设备即插即用,无需统一 Apple ID 或采购硬件。
快速上手
✅ Mac 端安装:访问 官网下载最新 .dmg,拖入 Applications 文件夹,首次运行需在「系统设置 → 隐私与安全性 → 屏幕录制」和「辅助功能」中授权。
✅ iOS 端安装:App Store 搜索「OpenDisplay」下载(已上架),安装后打开并授予「本地网络」权限(设置 → 隐私与安全性 → 本地网络)。
✅ USB 连接:用支持数据传输的 Lightning 或 USB-C 线连接 iPhone/iPad 与 Mac,Mac 端选择「USB」模式,设备自动出现在显示器列表中。
✅ WiFi 连接:确保 Mac 和 iOS 设备在同一 WiFi 下,iOS 端保持 App 前台运行,Mac 端选择「WiFi」→ 从下拉菜单选中设备名即可。
同类对比 / 注意事项
- vs Apple Sidecar:Sidecar 虽免费但强制绑定同一 Apple ID、不支持 iPhone、仅限部分 Mac/iPad 组合(如 M1 Mac + iPad Pro 2018+);OpenDisplay 无 ID 限制、全机型兼容(iOS 15+/macOS 12+)、iPhone 全面支持。
- vs Duet Display:Duet 已转为年费订阅制($9.99/月),且需后台常驻服务;OpenDisplay 一次性安装、永久免费、无后台进程、无联网验证。
- vs Luna Display:Luna 必须购买 $80+ 硬件接收器,且仅支持 iPad;OpenDisplay 纯软件方案,iPhone/iPad/Mac 三端通用,零硬件成本。
- 注意紫色录屏指示器:Mac 菜单栏出现紫色圆点是正常现象(ScreencaptureKit 触发的系统级提示),代表屏幕正在被采集——这不是漏洞,而是 macOS 的隐私保护设计,Duet、OBS、Zoom 同样触发,无法也无需关闭。
- USB 线务必选数据线:充电专用线无法通信!请确认线缆包装标注「Sync & Charge」或「Data Transfer」,USB 2.0 即可满足需求,不必追求 USB 3.0 或雷电。
项目信息
Free, open-source Sidecar/Duet alternative — use your iPhone or iPad as a true second monitor for your Mac over USB or WiFi. Low latency H.264, Retina
3.5k
今日 +258 stars today
Stars
246
Forks
Swift
GPL-3.0
编程语言:Swift|GitHub Star 数:3506|开源协议:GPL-3.0|GitHub 项目地址
如果你厌倦了为「把手机变显示器」这个基础需求反复付费、妥协、折腾,那么 OpenDisplay 是目前中文用户最值得尝试的开源解决方案——它用扎实的工程实现,把一个本该简单的事,真正还给了用户自己。




