Azure媒体播放器播放失败:未找到适用于当前浏览器环境的兼容源(0x10600003)



我正在为我的Django项目开发视频点播功能。它将由Azure媒体服务提供支持。

目前,我正试图通过以下代码运行上传的视频:

<video id="azuremediaplayer" class="azuremediaplayer amp-default-skin amp-big-play-centered" controls autoplay width="640" height="400" poster="" data-setup='{"techOrder": ["azureHtml5JS", "flashSS", "silverlightSS", "html5"], "nativeControlsForTouch": false}'>
    <source src="{{ video.streaming_url }}" type="video/mp4" />
    <p class="amp-no-js">
        To view this video please enable JavaScript, and consider upgrading to a web browser that supports HTML5 video
    </p>
    </video>

其中{{ video.streaming_url }}包含http://example.streaming.mediaservices.windows.net/66193aae-b739-4cb5-b4b9-f4a4a151c791/myproject.ism/manifest类型的流url。

我的问题是,我得到错误没有找到兼容的源当前浏览器环境(0x10600003)。事实上,我得到这个错误,当我去http://ampdemo.azureedge.net/azuremediaplayer.html以及(即官方azure媒体播放器演示)。

似乎0x10600003错误码意味着Autoselect failed to find a player请注意,Youtube视频在我的环境中工作得很好。操作系统为Ubuntu 14.04,浏览器为Mozilla Firefoz 41.0.1。之前一个未被接受的答案引导op安装并启用Silverlight。我不能指望所有的用户都这么做。我如何让回放工作?

Azure Media Player建立在4个不同的播放器上,一个DASH播放器,一个Flash播放器,Silverlight播放器,以及你正在观看视频的浏览器的本机实现播放器。这些不同的"播放器技术"播放不同的协议支持我的Azure媒体服务- DASH, Smooth和HLS。

AMP通过查看浏览器支持的技术/功能,智能地决定为特定设备或浏览器使用哪个播放器/播放协议。首先,它将检查浏览器是否支持媒体源扩展。MSE允许浏览器在不使用Flash和Silverlight等插件的情况下播放自适应比特率流,大多数现代浏览器都支持它,但旧版本的浏览器并不总是支持它。如果支持MSE,AMP将使用MPEG-Dash协议播放您的内容,这样就可以了。如果不支持MSE, AMP将检查是否安装了Flash,然后检查是否安装了Silverlight。如果其中任何一个为真,它将使用安装的插件和平滑流协议播放。如果两者都没有安装,它将尝试通过浏览器的原生html5视频标签实现进行回放。这完全依赖于浏览器,大多数浏览器本身不支持ABR流(除了,例如,通过HLS的Safari)

你的简短回答,考虑到这个背景信息,是因为你使用的是不支持MSE的旧版本的FF,你需要安装Flash或Silverlight来播放你的自适应比特率流。

为您/客户提供的一些缓解措施:1)安装Flash/Silverlight2)下载最新版本的FF,我们推荐这样做,因为v42支持MSE,但在v47+ Google Widevine中支持受保护的内容,这意味着您可以在没有Silverlight的情况下播放DRM加密的内容

请参阅Azure Media Player的兼容性矩阵以获取有关哪些浏览器支持哪些内容的更多信息。如果你有任何问题,你可以发邮件给我ampinfo@microsoft.com,希望这对你有帮助!

我刚刚取消了内容策略并创建了一个新的,它又开始工作了

相关内容

最新更新