Flowplayer无法在IE9中找到视频,在IE8及以下版本中找不到支持的视频

时间:2012-10-28 10:53:59

标签: html5 internet-explorer video internet-explorer-9 flowplayer

我正在尝试使用Flowplayer在可用的情况下允许HTML5视频,并在不支持时使用闪回后备。

这在Firefox和Chrome中运行良好,但在IE9中找不到视频,在IE9下面它只是不支持视频。

我做错了还是IE不支持流媒体?

3 个答案:

答案 0 :(得分:5)

解决方案摘要

我遇到了类似的问题,我想我已经解决了,所以也许这也会解决它。我的问题最终成为我的.mp4视频文件的MIME类型被视为video / mpeg。当视频作为视频/ mp4提供时,它将在IE9上正确加载。我没有测试.ogg文件,但我觉得问题类似。

分析:

我有点困惑,因为我在主flowplayer demos页面以及此HTML5 Video Player Comparison页面上看到了视频(在所有浏览器中)。然而,我感觉有点平反,因为他们自己的开发人员无法获得一致的负载,已经作为bug report的一部分提交,他们的"fix" demo也不适合我(但他们的主要演示了!)。

扣除:

完全镜像他们的设置并跟随setup documentation后,我的播放器仍然无法在IE9中工作,但在Firefox,Chrome和IE8中工作(使用闪回后备)。

我决定尝试从他们的服务器加载他们的视频,它立即起作用。我检查了IE9中的网络窗格,发现了MIME类型的差异。当流量计服务器将.mp4文件作为“video / mp4”提供时,我的服务器将.mp4文件作为“video / mpeg”提供。我知道.mp4文件类型只是一个容器,视频文件依赖于底层编码方案,但我觉得IE9在尝试基于MIME类型解码视频时很挑剔 - 它甚至都不会尝试如果它不是它认为可玩的东西就玩它。我让网络管理员更改了MIME类型,之前失败的同一视频现在运行正常。

供参考,这就是我设置HTML的方式:

在头部

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> 
<script src="http://releases.flowplayer.org/5.1.1/flowplayer.min.js"></script>
身体

<div class="flowplayer is-splash">
    <video preload="none">    
        <source src="http://stream.flowplayer.org/black/470x250.mp4" type="video/mp4" />
    </video>
</div>

答案 1 :(得分:2)

这里的解决方案似乎对我有用....

基本上,流媒体的flash后备似乎在IE中不起作用......

解决方案是使用旧的Flowplayer flash插件并使用IE条件标签,如下所示:

<!--[if IE]>

    <a href="videos/file.mp4"
       style="display:block;width:520px;height:330px"  
       id="player"> 
    </a> 

    <script>
    flowplayer("player", "/swf/flowplayer-3.2.15.swf");
    </script>

<![endif]-->

<!--[if !IE]><!-->  

    <div class="flowplayer" data-swf="swf/flowplayer.swf" data-ratio="0.417">
        <video>
        <source type="video/mp4" src="videos/file.mp4"/>
        <source type="video/ogg" src="videos/file.ogv"/>
        </video>
    </div>

<!--<![endif]-->

答案 2 :(得分:1)

经过大量研究并且无法添加标头标签以强制兼容模式(因为我的视频位于模态内)。我通过更改

中的源标记让它适用于IE9

<source type="video/mp4" src="video.mp4"></source>

<source type="text/html" src="video.mp4"></source>

我看到当IE9中没有播放视频时,mp4文件被重新编辑为text / html而不是video / mp4 ...所以我只是尝试更改标签并且它有效!

我知道这没有任何意义......但是从IE开始有意义的时候?!所以,如果你不能在你的php文件头中设置标题('X-UA-Compatible:IE = EmulateIE8');在我的情况下,尝试将mp4类型设置为text / html