我在使用dash.js播放器实现的Firefox(并且只有Firefox)中遇到了问题:
视频元素用于DRM内容后,它似乎拒绝播放任何其他内容。这是显示DRM内容但中断它以显示视频广告所必需的。
如何重现(你基本上可以跳过第4,5和6步,这只是mp4工作的一个演示):
- 启动Firefox(我在Windows 10上使用的是48.02版本)
- 转到http://dashif.org/reference/players/javascript/v2.3.0/samples/dash-if-reference-player/index.html
- 打开浏览器控制台
- 使用videoElement = document.querySelector('video')
选择视频元素
- 使用videoElement.src =“http://www.html5videoplayer.net/videos/toystory.mp4”
将源设置为示例视频
- 见证工作视频。你可以跳过第4步,第5步和第6步。我只是想证明当然firefox可以播放mp4文件。
- 将流源设置为Axinom - >来自下拉菜单的Axinom multi-drm(1080p)
- 点击右上角的蓝色“加载”按钮
- 见证受DRM保护的内容在Firefox中播放!
- 暂停视频
- 输入videoElement.src =''清除视频元素来源;在浏览器控制台中
- 按照步骤5将流设置为mp4平面。我无法重新引用此步骤,因为我只能在此问题中发布两个链接。完全按照步骤5进行操作
控制台中的- 见证错误消息:“媒体资源xxx无法解码。”
醇>
如果您愿意,可以通过javascript添加新的视频元素到页面。这将播放视频,而第一个不播放。你可以摧毁旧的,一个新的也可以玩它。
这在任何其他浏览器中都不会发生。这个问题当然不会发生在chrome中。甚至不在微软边缘。
出于我的目的,我无法创建新的视频元素。围绕该视频元素有一个玩家构建,并且它保持状态。很多听众都注册了视频元素。这不是删除视频元素或使用第二个视频元素的解决方案。
所以,我的问题:
- 我在Firefox中做错了什么?在播放DRM内容后,如何清理我的视频元素以播放普通mp4?
- 这是一个错误吗?它是Firefox bug还是dash.js bug?
醇>