ios - 离线 Fairplay HLS 内容无法播放

标签 ios swift offline http-live-streaming fairplay

我正在使用 AVAssetDownloadTask 下载 Fairplay HLS 视频并保留解密 key 。下载成功完成后,我尝试使用本地 url 创建一个 urlasset,但将 Assets 加载到 avplayer 后它无法播放。 在线播放相同的视频,因此可以正确检索和保存解密 key 。

我注意到 AVAssetResourceLoaderDelegate 没有被离线调用,所以基本上播放器没有检索解密 key 。

谁知道哪里出了问题?

最佳答案

确保在为您的 Assets 创建 AVPlayer 实例之前将 preloadsEligibleContentKeys 设置为 true

let asset = AVURLAsset(url: fileURL)
asset.resourceLoader.preloadsEligibleContentKeys = true
asset.resourceLoader.setDelegate(<#delegate#>, queue: DispatchQueue.global())

关于ios - 离线 Fairplay HLS 内容无法播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45102937/

相关文章:

iOS - 使用 3G/蜂窝网络时清空 map 图 block /将 map 切换到离线模式

ios - 在日期选择器 IOS 中设置特定日期

ios - 终止app swift 2后发送本地通知

ios - Swift - 在 vi​​ewDidLoad() 之外声明变量的替代方法

swift - xcode 6 GM - NSFetchedResultsSectionInfo

testing - 如何自动测试离线模式是否在 Web 应用程序中工作

ios - 以编程方式更改 Y 位置约束

ios - 无法在不重新加载 UITableView 的情况下更改原型(prototype)单元格 UIButton 图像

ios - 应用程序在远程设备中不知不觉地崩溃