2

chromecast sdk 声明支持widevine 内容。通过测试,我确定在 chromecast 设备上运行的浏览器上没有安装 Widevine 浏览器插件。知道这一点后,如何使用 chromecast sdk 播放 Widevine 视频内容?我正在使用子类化 MediaProtocolMessageStream 并试图找出需要将什么 ContentMetaData 传递给 loadMedia()。任何指导都会很棒!

4

1 回答 1

1

目前,您必须从头开始编写自己的 (javascript) 播放器来支持 DRM 内容,包括 Widevine。chrome 浏览器(在 Chromecast 设备中)支持 EME,因此您可以利用它。

为了进一步澄清,这里有一个非常高级的过程需要发生:您需要为“needkey”事件注册一个带有视频元素的侦听器,当浏览器检测到受保护的内容时将触发该事件。然后你必须调用 video.generateKeyRequest(..) 并传递适当的“密钥系统”和“初始化数据”(initData)。needkey 事件包含 initData,但应用程序可以在调用 generateKeyRequest() 之前对其进行修改。在通过内容解密模块 (CDM) 之后,浏览器会触发一个“keymessage”事件,其中包含应用程序需要捕获并发送到许可证服务器的请求密钥。如果一切顺利,许可证服务器会返回一个密钥,然后应用程序应通过调用 video.addKey() 将其传递给浏览器。

于 2013-10-07T02:50:47.793 回答