Chromecast 接收器期望的 Widevine 许可格式

问题描述 投票:0回答:1

对于受 Widevine DRM 保护的视频资产,我的 CDN 的许可证服务器以这种形式返回 base64 编码的许可证:

{
    "getWidevineLicenseResponse": {
        "license": "CAIS6AQ/KNAoQYNEgAOoX [snip] +0UWAE="
    }
}

但是我的 Chromecast 自定义广播接收器似乎不喜欢这种格式。我试过只返回许可证字符串本身,我试过将它转换为 ascii 并返回字节缓冲区中的字符,但到目前为止视频无法播放(触发 Shaka 6008 错误说它不能更新媒体密钥)。

有人知道 Chromecast 播放器的 CDM 在播放受 Widevine 保护的 DASH 游戏时所期望的许可证密钥格式吗?

我已经构建了一个自定义 CAF 接收器,我可以播放大多数由我的 CDN 提供的标题,但受 DRM 保护的标题无法协商从我的许可证服务器收到的许可证。

chromecast google-cast drm widevine
1个回答
0
投票

我相信返回的响应是一个包装的 DRM 许可证。获取 getWidevineLicenseResponse.license 值并将其转换为 UInt8Array,Cast Application Framework 应该可以使用它。

就在最近,Web Receiver 在创建 PlaybackConfig 时有新的处理程序变量可以分配给这种情况,称为 licenseHandler。如果服务器无法返回非 JSON 响应,则需要执行此操作。

有关必须完成哪些转换的想法,请访问 https://shaka-player-demo.appspot.com/docs/api/tutorial-license-wrapping.html 在 Wrapping License Response 下谈论 6008错误。

© www.soinside.com 2019 - 2024. All rights reserved.