IE9 对 HTML5 视频的支持让我发疯,据我所知,它支持 H.264 编解码器,因此任何带有 .mp4 扩展名的文件。
问题是,它没有播放扩展名为 .mp4 的视频文件。. .
更不寻常的是,如果我在本地测试,IE9会播放mp4视频,只是在服务器上不播放,这也与MIME类型无关,我在服务器中添加了以下MIME类型:
.mp4 - 视频.mp4
在 IE 开发人员工具的网络面板中,它的类型为“video/mp4”,唯一不寻常的是网络面板显示 IE 正在请求它 3 次(我不知道为什么会这样)
我已经走到了尽头,以至于我实际上编写了下面的代码来尝试修复它(我真的很讨厌在实时站点上使用它,这太可怕了):
<!--[if !IE 9]><!-->
<video controls="controls">
<!--<![endif]-->
<!-- This is a horrible way to do this, but I cannot figure out for the life of me why IE9 won't play this video :( -->
<!--[if !IE 9]><!-->
<source src="video.ogv" type='video/ogg; codecs="theora, vorbis"'/>
<source src="video.mp4" type="video/mp4">
<!--<![endif]-->
<!-- If HTML5 video is not supported, the following Flash video will play -->
<p>flash video stuff is here</p>
<!--[if !IE 9]><!-->
</video>
<!--<![endif]-->
这通过强制 IE9 对不支持 HTML 视频的浏览器使用 flash 视频来修复它(而不是默认情况下这样做,IE9 似乎只是显示一个空白框,没有错误消息,没有任何东西)。不幸的是,这个解决方案太可怕了,我几乎羞于写它。
有人知道是什么原因造成的吗?或者我该如何解决?
编辑:不确定这是否有任何意义,但我使用http://www.freemake.com/free_video_converter/将文件转换为正确的格式