DRM配置设置 然后,特定的DRM配置选项将嵌套在drm块内。可以在特定来源中配置多种形式的DRM,具体将根据特定浏览器进行选择。
有时需要将自定义http标头添加到许可证请求中。这些值特定于您正在使用的DRM提供程序。以下示例使用的标题的名称为customData,其设置等于提供的值。这些标题提供了额外的安全性,没有它们,许可证申请将不会被批准。请注意,并非所有DRM提供程序都需要这些自定义标头对。可以在我们的开发人员网站上找到更多信息。
DRM的典型工作流程包括配置多种DRM技术以覆盖最常见的播放环境。这些DRM技术应嵌入特定的来源中,以使播放器能够使用正确的技术。下面显示了一个完全嵌套的DRM块的示例。此方法根据请求内容的浏览器/客户端选择适当的DRM技术。
<script>
jwplayer('myElement').setup({
playlist: [{
sources: [{
file: 'https://www.website.com/media/videofile.mpd',
drm: {
widevine: {
url: 'https://widevine-proxy.appspot.com/proxy',
headers: [{
name: 'customData',
value: 'abcdefg1234567hijklmn89101112opqrs98765tuvwxy'
}]
},
playready: {
url: 'https://playready-proxy.appspot.com/proxy',
headers: [{
name: 'customData',
value: 'abcdefg1234567hijklmn89101112opqrs98765tuvwxy'
}]
}
}
},{
file: 'https://www.website.com/media/videofile.m3u8',
drm: {
fairplay: {
processSpcUrl: 'path to key server that provides ckc',
certificateUrl: 'path to certificate'
}
}
},{
file: 'https://www.website.com/media/clearkey_manifest.mpd',
drm: {
clearkey: {
key: 'xldkjfa9a38hfa98hsadf0a89h',
keyId: '1234-5678-91011'
}
}
}]
}]
});
</script>
如何将其转换为android?
答案 0 :(得分:0)
您需要确定是要使用Android中的“本机”播放器还是使用浏览器。
以上方法适用于浏览器,并且如果浏览器位于Android设备上,则您很有可能会使用Widevine-您通常始终需要的信息是许可授权或LA URL,但这可能与用于您通常的计算机浏览器用例。您可能还需要自定义标头,如上面的示例所示-您的DRM提供者可以帮助您将其引向此处。
如果您使用的是本地播放器,例如如果您在应用程序中使用JWPlayer SDK,则JWPlayer在下面使用ExoPlayer并公开其API。
ExoPlayer是Google为Android提供的媒体播放器,可能是目前使用最多的媒体播放器。
JWPlayer在此处提供有关本机播放器API的一些基本DRM信息:https://developer.jwplayer.com/sdk/android/reference/
您可能想看一下ExoPlayer文档和演示应用程序,以便更好地了解它:https://google.github.io/ExoPlayer/drm.html
答案 1 :(得分:-1)
如果使用Android SDK,则必须遵循以下说明:https://developer.jwplayer.com/sdk/android/docs/developer-guide/drm/drm-protected-playback/
基本上,您必须实现自己的MediaDrmCallback实现,该实现设置为播放列表项。 MediaDrmCallback将包含向许可证服务器发出请求所需的逻辑