Widevine DRM - Body 请求负载

Widevine DRM - Body request payload

我正在集成一个播放器,该播放器必须在浏览器中播放受 Widevine DRM 保护的流。

我检查了一些 well-known 玩家 :

幸运的是,这些播放器提供了一些使用 Widevine DRM 保护的流媒体样本。

我的问题涉及 XHR 执行以检索 DRM 密钥。在任何 Widevine 安全流中,我可以看到(在 devtools 中)至少 2 个针对许可证服务器的 XHR。

举个例子:https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd

此流可用于:

在 Chrome (65.0.3325.181) 上,当我加载流时,我可以 2 XHR(让我们省略 pre-flight "OPTIONS" xhr):

我不明白为什么会有 2 个 XHR? 此外,无论选择何种流(在 Widevine DRM 流的情况下),始终发送带有两个字符 \x08\x04 的第一个 XHR,是否有特定含义?

第一个请求确实有特定的含义。但是确切的意思不是public知识。它将要求您与 Widevine 取得联系并获得 CWIP 认证。

第一个请求是 Widevine 服务证书

第二个请求是实际的许可请求

您可以在 https://www.widevine.com/product_news.html

上阅读更多相关信息

参见Update - Chrome 59 and Service Certificates

部分