HLS脱机事件播放列表

时间:2018-03-13 16:41:00

标签: ios video-streaming hls

我正在尝试Apple的HLS离线功能,尝试从Event Playlist本地下载和播放视频。但是,我只能在VOD Playlist时离线下载和播放视频。 问题是:仅支持VOD播放列表的离线HLS吗?

关于我的环境的一些背景信息:

  1. 我依靠this sample code下载&播放我的视频。
  2. 视频播放就好了。
  3. 下载开始后立即调用委托方法URLSession:assetDownloadTask:didFinishDownloadingToURL:,这是令人惊讶的。这就是我认为它不受支持的原因 3.1检查该URL ^^,它指向movpkg文件,但在应用程序容器中找不到任何内容。
  4. 下载几秒钟后,我致电playOfflineAsset(),但isPlayableOffline的{​​{1}}始终为AVAssetCache。除非它是VOD播放列表false
  5. 我在本地网络中流式传输。因此,如果这是一个版权问题,并且许可规则可能会因为在本地网络中而受到限制,那就是我可以做的事情。
  6. 更新

    我从true覆盖了urlSession(URLSession, task: URLSessionTask, didCompleteWithError: Error?),并且错误地调用了它:

      

    错误Domain = AVFoundationErrorDomain Code = -11800“操作无法完成”UserInfo = {NSLocalizedFailureReason =发生未知错误(-16655),NSLocalizedDescription =操作无法完成}

    这解释了为什么 3。从上面发生的这么早。因为请求实际上是失败的。这可能确认HLS Offline不适用于事件或实时播放列表。在任何情况下,如果某人有一些事实支持这一点,我会很感激他们是否可以分享。

1 个答案:

答案 0 :(得分:0)

我联系了一位Apple AVFoundation工程师,他确认离线HLS仅适用于VOD播放列表(从iOS 11.2开始)。