内容提要
DRM(数字版权管理)利用加密技术保护视频内容,允许内容生产商设定观看规则。其流程包括使用对称加密算法加密视频,客户端请求解密密钥并经过鉴权后播放。常见方案有Apple的FairPlay,支持HLS和fmp4协议。密钥管理方式包括AVAssetResourceLoader和AVContentKeySession,后者支持预加载密钥以提升用户体验。
关键要点
-
DRM(数字版权管理)使用加密技术保护视频内容,允许内容生产商设定观看规则。
-
DRM工作流程包括使用对称加密算法加密视频,客户端请求解密密钥并经过鉴权后播放。
-
常见的DRM方案包括Apple的FairPlay,支持HLS和fmp4协议。
-
FairPlay的播放流程涉及请求SPC和CKC信息以获取解密密钥。
-
AVAssetResourceLoader和AVContentKeySession是管理密钥的两种方式。
-
AVAssetResourceLoader在用户点击播放后请求密钥,而AVContentKeySession可以提前下载密钥以提升用户体验。
-
AVContentKeySession支持离线播放FairPlay视频,允许在无网络情况下观看。
-
使用AVAssetDownloadTask可以下载HLS视频,下载完成后文件以movpkg格式存储。
-
AVAggregateAssetDownloadTask可用于下载包含多个码率、音轨和字幕的HLS流。
-
存储期和播放期的概念用于管理persistable key的有效期。
延伸问答
什么是DRM,它的主要功能是什么?
DRM(数字版权管理)是使用加密技术保护视频内容的系统,允许内容生产商设定观看规则。
FairPlay DRM的工作流程是怎样的?
FairPlay的工作流程包括客户端请求SPC信息,获取CKC信息以解密视频,完成播放。
AVAssetResourceLoader和AVContentKeySession有什么区别?
AVAssetResourceLoader在用户点击播放后请求密钥,而AVContentKeySession可以提前下载密钥以提升用户体验。
如何使用AVContentKeySession支持离线播放FairPlay视频?
使用AVContentKeySession可以请求persistable key并存储,允许在无网络情况下播放视频。
如何下载HLS视频并使用AVAssetDownloadTask?
创建AVAssetDownloadURLSession实例后,使用makeAssetDownloadTask方法创建下载任务并启动。
存储期和播放期在DRM中有什么区别?
存储期是指秘钥存储在本地的有效期,播放期是指用户开始播放视频后的有效期。