我一直在努力让AirPlay使用在AVPlayer中播放的加密流。
阅读this page by Apple并没有给我带来太多好处。
从受保护的HTTPS领域提供密钥。在播放开始之前,你的 应用程序可以使用NSURLConnection进行身份验证,提供 保密的凭证。
我只能在模拟器中使用它。不在设备上。
通过HTTPS使用Cookie。您的应用可以建立与HTTPS的连接 服务器并以应用程序定义的方式验证应用程序。 然后,您的服务器可以发出适用于密钥URL的cookie。您 应该将cookie设置为在播放完成后很长时间过期。该 然后,服务器必须要求存在有效的会话cookie 将来GET请求密钥。 为了获得最大的可靠性,如果到期日期是在不久的将来,服务器应该 在响应未来的GET请求时更新cookie的到期日期。
由于我无法直接访问服务器设置,因此我没有尝试过此操作,但如果没有其他答案出现,我将会这样做。
使用应用程序定义的URL指定.m3u8文件中的密钥 方案。该应用程序应注册一个自定义NSURLProtocol来处理 请求这些网址。然后,玩家会在回复时回复您的应用 它需要加载一个关键URL;然后,您的应用可以使用a获取密钥 安全的侧通道,可以提供给玩家。
这似乎不起作用,因为AVPlayer HTTP连接完全绕过NSURLProtocol系统。您无法拦截AVPlayer发出的任何HTTP请求。
如果有人能够以适用于AVPlayer和AirPlay的方式解决加密密钥服务问题,我将永远感激。
答案 0 :(得分:1)
似乎我正在摔跤的麻烦消失了iOS 5.1.1更新和以下Apple TV更新。 iOS 5.1.1更新不足以自行解决问题,但与随后的Apple TV更新一起再次完美无瑕。
现在已经足够实现您自己的环回服务器,正如我之前在question中所描述的那样。