HTML5视频解决方案无法在Safari,iPhone和iPad中使用播放器video-js

时间:2017-04-28 10:12:41

标签: iphone asp.net-mvc html5 video safari

当我在使用ASP.NET MVC的Web应用程序中工作时,我只是注意到我的网站上的视频正在Chrome,IE,桌面和Android手机上的Mozilla中播放,但它不能在Safari iphone上运行..所以我搜索找到一个解决方案,并在一些帮助下最终解决了这个问题,以下是步骤:

**使用播放器Video-js(https://github.com/videojs/video.js/#quick-start

<link href="//vjs.zencdn.net/5.11/video-js.min.css" rel="stylesheet" />

<!--Videojs-->
<div class="wrapper">
    <div class="videocontent">
        <video id="myvideo"
               class="video-js vjs-big-play-centered vjs-16-9"
               controls
               preload="auto"
               poster="~/Content/images/poster.png"
               width="640"
               height="500"
               data-setup='{}'>


     <source src="video.mp4" type="video/mp4" loop autoplay controls="true" />  
     <source src="video.webm" type="video/webm" loop autoplay controls="true" /> 
     <source src="video.ogv" type="video/ogg" loop autoplay controls="true" />  


        </video>
    </div>
</div>

<script src="//vjs.zencdn.net/5.11/video.min.js"></script>
<script type="text/javascript">

var video = videojs('myvideo');

document.getElementById('action').onclick = function () {
    video.play();
}

</script>

**我添加此播放器后,某些视频在所有设备上播放都很好,甚至Safari和其他视频都有错误:没有兼容的资源或检查您的服务器.. 经过多次搜索并尝试了很多建议,找到了原因(视频的编解码器必须是带有.mp4类型的H264),所以我把这些视频中的一个没有播放,导致错误没有comp ...,并且我转换了一个转换器程序它到H264 .mp4然后再次上传并工作,就是它...我希望能帮助很多程序员的人 谢谢 更多资源:https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/Using_HTML5_Audio_Video/Introduction/Introduction.html

1 个答案:

答案 0 :(得分:0)

唯一可能在逻辑上存在问题的是视频编码不正确。特别是Safari和Mobile Safari,仅支持H.264编码的MP4视频。 MP4是容器,技术上可以用于其他类型的编码视频,这很可能发生在这里。

此外,您需要了解编码配置文件和级别。并非所有设备都支持所有H.264配置文件。您应该使用Baseline,Normal或High之一安全。 High具有最佳压缩质量比,因此这是您最好的选择。水平更加挑剔。虽然更现代的设备将支持4.2或更高,4.1仍然享有最广泛的支持。

具体而言,您的视频需要是一个用H.264 High 4.1编码的MP4。