如何为 iOS 设置 AirPlay 视频和音频接收器(然后将流保存为视频文件)?
我知道这违反了 Apple 的指导方针,这不适用于 AppStore 分发。我可以使用私有 API。
注意:我正在使用 Pythonista(带有 objc_util),因此,如果可能的话,用 Python 编写的答案将非常有帮助,尽管仍然非常感谢 Swift/Objective-C。
如何为 iOS 设置 AirPlay 视频和音频接收器(然后将流保存为视频文件)?
我知道这违反了 Apple 的指导方针,这不适用于 AppStore 分发。我可以使用私有 API。
注意:我正在使用 Pythonista(带有 objc_util),因此,如果可能的话,用 Python 编写的答案将非常有帮助,尽管仍然非常感谢 Swift/Objective-C。
我假设您在最近令人难以置信(但寿命很短)的 Vidyo 应用程序在 App Store 上架后就有了这个想法。我设法在它被删除之前抓住了一个副本,但是在 Pythonista 中重新创建这种效果当然是可取的。
您可以从描述 AirPlay 协议如何工作的非官方 AirPlay 规范开始。具体来说,您需要有关 Screen Mirroring 的部分。由此,您也许可以组装一个 AirPlay 界面。
我认为这没有objc_util
必要,Python 提供了一些非常低级的网络模块。
通过阅读规范,您需要设置服务器。Flask
可能处理不了,Flask 可能太高级了。看起来 AirPlay 流媒体内容甚至不在有效 HTTP 请求的范围内。
我怀疑你会遇到很多麻烦。AirPlay 规范(尤其是屏幕镜像)相当复杂。您需要让您的服务器接收H.264
-encoded 视频直播(这与 Apple 用于直播其事件的格式相同),您还需要设置一个系统,用于根据通过单独发送的数据同步视频溪流。最重要的是,您需要提供一些端点来返回有关您的服务器的数据。
我想 Vidyo 完全有可能找到一些私有 API 让这变得更容易。我看不出 iOS 会在某处实现 AirPlay 服务器的任何明确原因,但这并非不可能。如果这存在,我不知道。你将不得不做更多的研究。
祝你好运 ;)