提问人:Ptumster 提问时间:3/17/2023 更新时间:3/31/2023 访问量:350
Chromecast 接收器预期的 Widevine 许可证格式
Widevine license format expected by Chromecast receiver
问:
对于受 Widevine DRM 保护的视频资产,我的 CDN 的许可证服务器会以以下形式返回 base64 编码的许可证:
{
"getWidevineLicenseResponse": {
"license": "CAIS6AQ/KNAoQYNEgAOoX [snip] +0UWAE="
}
}
但是我的 Chromecast 自定义投射接收器似乎不喜欢这种格式。我尝试仅返回许可证字符串本身,并尝试将其转换为 ascii 并返回字节缓冲区中的字符,但到目前为止,视频无法播放(触发 Shaka 6008 错误,说它无法更新媒体密钥)。
有谁知道在播放受 Widevine 保护的 DASH 游戏时 Chromecast 播放器的 CDM 所需的许可证密钥格式?
我已经构建了一个自定义的 CAF 接收器,并且能够播放我的 CDN 提供的大多数游戏,但受 DRM 保护的游戏无法协商从我的许可证服务器接收回的许可证。
答:
1赞
hrgui
3/31/2023
#1
我相信返回的响应是包装的 DRM 许可证。获取 getWidevineLicenseResponse.license 值并将其转换为 UInt8Array,该值应可供 Cast Application Framework 使用。
就在最近,Web Receiver 有了新的处理程序变量,可以在创建 PlaybackConfig 时分配给该变量,称为 licenseHandler。如果服务器无法返回非 JSON 响应,则需要实现此功能。
有关必须执行哪些转换的想法,请访问包装许可证响应下的 https://shaka-player-demo.appspot.com/docs/api/tutorial-license-wrapping.html,因为它讨论了 6008 错误。
评论