我正在尝试使用dash.js player (2.3.0版)播放多种数字版权管理内容(Widewine,Playready)。我收集了尽可能多的信息,但我仍然无法播放内容。Dash.js播放器最近被修改了,在互联网上找到的许多代码示例不再有效,文档也没有更新。这是我当前的代码:
HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<script src="dash.all.debug.js"></script>
<link rel="stylesheet" type="text/css" href="css/style.css" />
<title>Dash Example App</title>
</head>
<body onload="testVideo()">
<button id="playButton" type="button">Play</button>
<div>
<video id="vid2" data-dashjs-player controls>
</video>
</div>
<script src="main.js"></script>
</body>
</html>JS:
function testVideo() {
var AXINOM_DEMO_WV_LS = "http://drm-widevinelicensing.axtest.net/AcquireLicense";
var AXINOM_DEMO_header = "X-AxDRM-Message";
var AXINOM_DEMO_key = "here is the key";
var player = new dashjs.MediaPlayer().create();
var element = document.querySelector("#vid2");
player.attachProtectionData({
"com.widevine.alpha": new dashjs.MediaPlayer.vo.protection.ProtectionData(AXINOM_DEMO_WV_LS, AXINOM_DEMO_header, AXINOM_DEMO_key)
});
document.getElementById("playButton").click(function() {
var videoUrl = 'http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey/Manifest_1080p.mpd';
player.initialize(element, videoUrl, true);
});
};因此,我在控制台中得到“未捕获的保护:无法读取未定义的属性‘TypeError’”。我已经根据下面链接的文档准备了protectionData部件。
http://vm2.dashif.org/dash.js/docs/jsdocs/MediaPlayer.vo.protection.ProtectionData.html
谁能为我提供一个在dash.js中应该如何处理多drm内容的工作示例,或者解释一下我应该在代码中修改什么?
提前谢谢。
发布于 2016-09-07 14:06:21
有一个DRM quick start example on GitHub在Axinom DRM许可服务器上使用了这个确切的内容,完美地反映了您的场景。
您还可以找到可以在浏览器中查看的live deployment of the example project,以便快速查看用户视点。
如果在阅读该指南后仍有不清楚之处,请编辑您的问题,我将编辑此答案以详细说明缺少的部分!
发布于 2016-09-07 19:13:41
您链接到的文档是针对1.5.1版的。
v2.3.0的文档可以在http://cdn.dashjs.org/v2.3.0/jsdoc/index.html上找到
发布于 2021-02-11 15:32:37
更新的JS
function testVideo() {
var AXINOM_DEMO_WV_LS = "http://drm-widevinelicensing.axtest.net/AcquireLicense";
var AXINOM_DEMO_key = "here is the key";
var player = new dashjs.MediaPlayer().create();
var element = document.querySelector("#vid2");
player.setProtectionData({
"com.widevine.alpha": {
"serverURL": AXINOM_DEMO_WV_LS,
"httpRequestHeaders": {
"X-AxDRM-Message": AXINOM_DEMO_key
};
};
});
document.getElementById("playButton").click(function() {
var videoUrl = 'http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey/Manifest_1080p.mpd';
player.initialize(element, videoUrl, true);
});
};https://stackoverflow.com/questions/39344156
复制相似问题