Widevine视频播放

时间:2013-10-06 23:47:50

标签: android google-cast chromecast

chromecast sdk表示支持广泛的内容。通过测试,我确定在chromecast设备上运行的浏览器上没有安装widevine浏览器插件。知道了,如何使用chromecast sdk播放宽视频内容?我正在使用子类化MediaProtocolMessageStream的路径,并试图找出需要传递给loadMedia()的ContentMetaData。任何指导都会很棒!

1 个答案:

答案 0 :(得分:1)

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

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