Azure 媒体服务 - 视频播放因损坏而中止... (0x20400003)

Posted

技术标签:

【中文标题】Azure 媒体服务 - 视频播放因损坏而中止... (0x20400003)【英文标题】:Azure Media Services - The video playback was aborted due to a corruption... (0x20400003) 【发布时间】:2017-05-18 20:07:40 【问题描述】:

我已将我的 MP4 文件上传到 Azure,然后将它们转换为 H264 1080p 流格式。 当我尝试从播放器播放它时,它给了我以下错误:

所有浏览器都一样。当我从底层存储帐户下载处理后的 MP4 文件时,它们可以正常播放。

这是我的代码:

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">

    <title>The HTML5 Herald</title>
    <meta name="description" content="The HTML5 Herald">
    <meta name="author" content="SitePoint">
    <link href="//amp.azure.net/libs/amp/1.8.1/skins/amp-default/azuremediaplayer.min.css" rel="stylesheet">
    <script src="//amp.azure.net/libs/amp/1.8.1/azuremediaplayer.min.js"></script>

    <!--[if lt IE 9]>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.js"></script>
    <![endif]-->
</head>

<body>


    <video id="vid1" class="azuremediaplayer amp-default-skin amp-big-play-centered" autoplay controls   data-setup='"logo":  "enabled": false , "controls": true, "autoplay": false, "nativeControlsForTouch": true'>
    <source src="https://mediatest12.streaming.mediaservices.windows.net/96fe4710-a1e2-4384-a849-93a0fceb1d40/big_buck_bunny_1280x720_30mb.ism/manifest(format=mpd-time-csf)" 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>
    </video>

    <video id="vid2" class="azuremediaplayer amp-default-skin amp-big-play-centered" autoplay controls   data-setup='"logo":  "enabled": false , "controls": true, "autoplay": false, "nativeControlsForTouch": true'>
    <source src="https://igmediawe.streaming.mediaservices.windows.net/27472dba-a353-429e-b305-2879e32f65ea/wi005-packing_ecomm_pack_scan.ism/manifest(format=mpd-time-csf)" 
        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>
    </video>
</body>
</html>

第一个视频有效,另一个无效。

这是我尝试使用它的页面:完全相同的播放器设置适用于另一个视频:

https://opreports.azurewebsites.net/media.html

我做错了什么?如果我也尝试从 Azure 门户中播放它,我也会遇到同样的错误。

最初上传的源视频:

MP4
H.264/MPEG-4 AVC
1680 x 924
30fps
No audio stream

【问题讨论】:

【参考方案1】:

我最终得到了 Microsoft 支持的帮助,并在下面引用了他们的回答。


“问题是第二个视频是纯视频。根据http://amp.azure.net/libs/amp/latest/docs/features.html的底部,Azure媒体播放器不支持纯音频或纯视频文件。它们必须同时包含音频和视频。原因因为这是对大多数浏览器中媒体源扩展中某些功能的支持以及我们如何实现它们。

因此,我们在 Azure 媒体服务资源管理器 (http://aka.ms/amse) 中加入了一项功能,可让您将静音音轨添加到纯视频源文件或将黑屏添加到纯音频文件:

为此,请右键单击要编码的视频,选择编码 → 使用媒体编码器标准 (MES) 编码资产... → 高级选项卡。"

【讨论】:

以上是关于Azure 媒体服务 - 视频播放因损坏而中止... (0x20400003)的主要内容,如果未能解决你的问题,请参考以下文章

如何保护离线播放加密视频作为保存的html格式,视频源是天蓝色媒体云服务器?

EasyPlayer.JS播放录像报错视频文件损坏且播放终止怎么处理?

Unity播放服务器端视频 发布到Android移动端

使用 Azure 媒体服务中的令牌播放 Widevine

手机优酷上下载的视频显示文件损坏怎么回事

grunt serve:并发:服务器因警告而中止