Azure媒体服务 - 将视频(blob)流式传输到HTML5 azure媒体播放器

时间:2016-05-12 07:22:19

标签: c# .net asp.net-mvc azure azure-media-services

我的目标是让用户能够上传自己的视频,然后使用Azure媒体服务和Azure媒体播放器播放它们。我希望所有现代浏览器都支持视频播放。

目前我只测试过使用Azure门户手动上传,我有一些问题/疑虑..

HTML

<link href="//amp.azure.net/libs/amp/latest/skins/amp-default/azuremediaplayer.min.css" rel="stylesheet">
<script src="//amp.azure.net/libs/amp/latest/azuremediaplayer.min.js"></script>

<video id="azuremediaplayer" class="azuremediaplayer amp-default-skin amp-big-play-centered" controls autoplay width="640" height="400" poster="" data-setup='{"nativeControlsForTouch": false}' tabindex="0">
<source src="https://MYSTORAGE.blob.core.windows.net/asset-ad8677da-8869-4eb9-a93b-5805fc7e8122/bigbuck.mp4?sv=2012-02-12&sr=c&si=c7011ff9-be73-4ad4-a55a-fd05099ffa50&sig=WNnjsHGJB8PN8ZbmCGdBM34MEQ1oXsSxMXaPAqF1yK0I%3D&st=2016-05-11T14%3A32%3A19Z&se=2116-04-17T14%3A32%3A19Z" type="application/vnd.ms-sstr+xml" />
<p class="amp-no-js">To view this video please enable JavaScript, and consider upgrading to a web browser that supports HTML5 video</p>

1。使用上面的示例代码,我已将mp4视频上传到Azure Media Services。使用Chrome时一切正常,但使用Firefox时,我收到以下错误消息:

  

网络错误导致下载视频停止。检查您的网络   连接,稍后再试。

我的猜测是,我需要对视频进行一些额外的编码?如果是这样,我的规格需要什么编码?

在其他例子中,我看到人们使用特殊格式,ism / Manifest(?)我是否错过了一步?我所做的是发布资产,检索URL并将其粘贴到我的HTML5播放器中。我的网址看起来像是一个SAS URI ..

2. 我是否需要创建至少一个单元的流式端点?我查看了价格,我认为每月约139美元。呸。这不仅仅适用于直播吗?

3. Azure Media Services(资产)中的每个上传视频都会获得自己的blob容器。现在想象一下,如果我有超过一千个用户和更多视频。这真的是怎么做的?所有视频都不可能有相同的blob容器吗? Azure Media Service真的是我正在寻找的吗?

4. 如果我没有使用Azure Media Services,那么我的其他选择是什么?将上传的视频转换为MP4 / WebM / Ogg并将我的存储空间分开?

1 个答案:

答案 0 :(得分:2)

上面要注意的一点是,您在源标记中提供的mime类型不正确,因为您使用的是渐进式MP4并且未使用自适应流式传输。你有&#34; application / vnd.ms-sstr + xml&#34;什么时候应该是&#34;视频/ mp4&#34; - 此用例有一个示例http://amp.azure.net/libs/amp/latest/samples/videotag_progressiveVideo.html