iPhoneMirror v1.2.1
iPhoneMirror v1.2.1
正式版,适用于 Windows 10/11 x64。
本版重点
- 新增 HDR 视频链路:支持 AVC/HEVC、NV12/P010、BT.601/709/2020、Display P3、PQ/HLG、HDR 转 SDR tone mapping,并可在开启 Windows HDR 的显示器上使用 FP16 scRGB 输出。
- 新增多解码器策略:提供自动、硬件优先、软件兼容三种模式;Media Foundation 解码器初始化或运行失败时会自动回退,并按设备独立保存设置。
- 完善多设备投屏:两台及以上设备可以同时拥有独立的采集、解码、音频、主预览和独立窗口会话;停止或切换一台设备不会中断其他设备。
- 增强 iPad 与 USB-C 设备兼容性:动态识别 QuickTime configuration、interface、alternate setting 和 endpoint,支持重枚举后的序列号与物理端口匹配。
- 视频软件投放现已与有线/无线镜像共用主预览、独立窗口、全屏、截图、统计信息和右键功能链路。
视频投放与窗口
- 暂停、继续、拖动进度改为独立 Pause、Resume、Seek IPC 命令,不再通过重新加载 URL 模拟进度跳转。
- 右上角按钮在视频投放期间显示“停止投屏”,并向接收端发送协议 Stop 请求。
- 修复直播流和 HLS 已连接但不播放的问题,并加入受限重试与媒体后端恢复。
- 修复播放状态横条残留、分辨率/帧率/音频统计缺失、设备选项卡无法切换以及播放结束时可能卡死的问题。
- 视频投放独立窗口使用 Windows 原生标题栏和标准圆角;有线/无线镜像继续使用无标题栏设备外形,并保留“去除圆角”选项。
- 独立窗口支持双击全屏,修复拖动窗口时严重掉帧、右键菜单不一致及窗口关闭/恢复竞态。
HDR 与解码
- 支持
avc1、avc3、hvc1、hev1sample entry,以及hvcC、VPS/SPS/PPS、NAL 长度、位深和色彩信息解析。 - 每帧优先读取实际 Media Foundation sample 色彩/HDR 属性;流中参数集、位深或色彩配置变化时自动重建解码器。
- 修复异步 MFT 的 NeedInput、HaveOutput、DrainComplete、sample 生命周期与 ShutdownObject 处理。
- HDR 输出会随窗口所在显示器及 Windows Advanced Color 状态动态切换;普通 SDR 内容保持 BGRA8 低带宽路径。
- 截图与 OBS BGRA 输出支持 P010 输入并正确转换为 SDR。
多设备与稳定性
- 使用 USB serial 与物理端口 topology 共同确认设备身份,修复 QuickTime 重枚举期间串设备和左侧出现幽灵设备的问题。
- 主预览 HWND 增加跨会话唯一所有权,重复挂接改为幂等刷新,修复
CreateSwapChainForHwnd 0x80070005。 - 改进 QuickTime shutdown、音频队列、应用关闭、后台设备错误和无线接收端生命周期,降低停止投屏或退出时卡死的风险。
- 修复构建流程可能把旧版 native DLL 放入新 UI 产物的问题;普通构建、测试和正式发布现在使用同一份最新 native runtime。
日志与安全
- 扩展应用、USB、协议、解码器、渲染器、视频投放、驱动操作和关闭流程的结构化日志,并加入日志轮转和隐私化设备标识。
- 加固驱动负载哈希、Authenticode、结果文件、提权参数、退出码一致性、超时终止、重解析点及发布目录校验。
- 发布包包含第三方许可、SHA-256 校验文件和 SPDX SBOM。
验证结果
- Native Core protocol tests:通过
- WirelessHost smoke test:通过
- App logic tests:通过
- Driver installer tests:通过
- 两台 USB 真机同时投屏:通过;会话
1,2均进入 Streaming,停止一台后另一台继续运行 - QuickTime shutdown:两台设备均发送 2 个停止消息
- 多设备稳定选择:8 次刷新保持 2 台设备且选择不漂移
- 视频投放集成测试:主预览、独立窗口、原生标题栏、Windows 圆角、双击全屏和停止投屏均通过
- 媒体控制测试:Pause、Seek、Resume IPC 均通过
- 主预览 swapchain attachment failure:0
- Release 构建:0 warning,0 error
使用说明
- 下载
iPhoneMirror-v1.2.1-win-x64.zip并完整解压后运行iPhoneMirror.exe。 - 首次使用有线投屏时,可通过随包提供的
iPhoneMirror.Driver.exe检查 Apple USB 环境及设备驱动。 iPhoneMirror-v1.2.1-win-x64-latest.zip与版本 ZIP 内容相同,便于固定下载地址。- 可使用
SHA256SUMS.txt校验下载完整性;iPhoneMirror-v1.2.1-win-x64-sbom.spdx.json提供依赖清单。
已知限制
- Apple USB、AirPlay 和视频投放依赖设备及系统协议行为,未来 iOS 或 Windows 更新可能需要相应适配。
- HDR 实际输出取决于视频元数据、显卡驱动、显示器能力和 Windows HDR 设置;SDR 显示器会自动使用 tone mapping。
- 当前未提供 Windows Authenticode 发布签名,首次运行时 Windows 可能显示安全提示。
许可证
iPhoneMirror 原创代码使用 GNU GPL-3.0-only。Apple 组件及第三方库遵循各自许可,详情见发布包中的 THIRD_PARTY_NOTICES.md 与 licenses 目录。