1

在实施脱机 FPS 时出现 AVFoundation 错误 -11800 我正在使用 FPS 实施脱机 HLS。

我已经使用 AVAssetDownloadDelegate 现在下载了视频 对于 DRM 内容,我需要获取许可证,因此我已经实现了 AVAssetResourceLoaderDelegate 在 AVAssetResourceLoaderDelegate 中一切正常,我获得了 CKC 或许可证,但是当我执行以下代码时

let persistentContentKeyContext = try loadingRequest.persistentContentKey(fromKeyVendorResponse: responseData, options: nil)

我收到以下错误

Error Domain=AVFoundationErrorDomain Code=-11800“操作无法完成” UserInfo={NSLocalizedFailureReason=发生未知错误(-12158),NSLocalizedDescription=操作无法完成,NSUnderlyingError=0x1c084a6e0 {Error Domain=NSOSStatusErrorDomain Code=-第12158章

谁能告诉我这个错误代码是什么意思以及如何解决这个错误。

4

1 回答 1

1

不幸的是,您看到的错误响应并没有像您注意到的那样提供非常丰富的信息,并且可能涵盖多个失败案例。

这通常意味着设备 FairPlay 服务无法正确解码您的 DRM 服务器提供给设备的 CKC,或者其中的某些信息与永久许可证不一致。

这是您要调试的问题,因为发回的 CKC 以您无法读取的方式加密 - 请参见 Apple 的下图显示序列:

在此处输入图像描述

调试和调查此问题的最佳方法通常是联系您的 DRM 服务器(上图中的关键服务器)的提供商,看看他们是否可以在服务器端进行调查并解码他们发送给您的响应,以便您检查它符合您的预期,并且持续时间等是正确的。

于 2019-11-25T17:53:16.607 回答