目录

DRM Kit 简介

DRM Kit(Digital Rights Management Kit,数字版权保护服务)提供了DRM加密节目授权解密的功能,包括DRM插件管理、DRM证书管理、DRM许可证管理、DRM节目授权、DRM节目解密等功能,可实现DRM解决方案的集成、DRM解决方案的证书下载、节目的授权及解密。

能力范围

通过DRM Kit,DRM解决方案集成方可以完成DRM解决方案的集成,应用开发者可以通过调用对应的DRM解决方案,实现DRM加密节目授权解密的功能,实现DRM节目的播放。

DRM证书管理、DRM许可证管理、DRM节目授权、DRM节目解密依赖对应的DRM解决方案的实现。应用开发者可以自行扩展支持的媒体协议、封装格式、视音频编码格式。

亮点/特征

基础概念

在开发前,需要先了解以下基础概念:

工作流程

DRM插件管理功能一般由DRM解决方案集成方实现。

应用集成DRM Kit工作流程如图所示。

工作流程主要包括:

  1. 创建MediaKeySystem及MediaKeySession实例:应用获取节目的DRM信息,根据DRM信息中的解决方案UUID类型创建MediaKeySystem及MediaKeySession。应用可以通过业务提供的DRM描述得到节目的DRM信息,也可以根据Media Kit或AVCodec Kit抛出的mediaKeySystemInfoUpdate事件或MediaKeySystemInfo回调得到节目的DRM信息。

  2. 证书下载:在创建MediaKeySession时,如无DRM证书或DRM证书异常,DRM Kit将抛出需下载DRM证书的事件(keySystemRequired),此时可以调用MediaKeySystem的证书下载相关接口完成证书下载。也可以根据DRM解决方案实现的要求,检查DRM证书状态,如无DRM证书或DRM证书异常,也可主动调用MediaKeySystem的证书下载相关接口完成证书下载。如DRM解决方案的证书正常或DRM解决方案无需应用下载证书,则跳过此步骤。

  3. 许可证获取:应用根据DRM事件中的pssh数据调用MediaKeySession的许可证相关接口完成DRM许可证的请求、处理。

  4. DRM节目解密:应用将MediaKeySession设置到Media Kit或AVCodec Kit,用于支持DRM节目解密。采用AVCodec Kit时,可以设置视音频数据帧的cencinfo,并设置到AVBuffer中,在调用PushInputBuffer的时候实现视音频数据帧的解密、解码。

  5. 许可证更新或过期:在节目播放过程中,在许可证需要更新的情况下,MediaKeySession将抛出许可证更新事件(keyRequired),此时需要重新请求DRM许可证。MediaKeySession如抛出许可证过期事件(keyExpired),则需要停止DRM节目播放。

模拟器支持情况

本Kit暂不支持模拟器。