直播流中的DRM涉及到一个Key Rotation的概念,所谓key rotation就是加密内容的key可以随时间变化,一般用于直播流媒体,但是在点播中也是可能存在的(may be optional for VOD streams). 根据widevine文档,key rotation往往结合fragemented mp4格式使用,利用关键的moof和pssh(包含drm初始信息) box完成。
具体来说,client不停的从流中读moof以及包含在moof中的pssh,当发现pssh发生变化的时候,就意味着发生了key rotation.此时client就需要利用读到的新drm初始化信息进行key request.如下图所示:
举一个实例:假设现在我们有一个包含key rotation的dash流,已知他的key rotation周期是30s,首先来看一下他的mpd:
<?xml version="1.0" encoding="UTF-8"?>