我认识的人要求我将他网页上的视频从使用 FlowPlayer 转换为使用原生 HTML 5 视频。
首先,我读到 3 种格式足以涵盖主要的桌面浏览器(Chrome、Firefox、IE 和 Opera)。从 开始,.avi
我使用 Miro Video Converter 获取视频.mp4
,如下所示:.ogg
.webm
为了进一步帮助实现交叉兼容性,我决定使用VideoJS。
标记似乎也很简单:
<video id="example_video_1" class="video-js vjs-default-skin"
controls preload="auto" width="500px" height="300px"
poster="something.png">
<source src="something.mp4" type="video/mp4" />
<source src="something.webm" type="video/webm" />
<source src="something.ogv" type="video/ogg" />
</video>
这是我在浏览器上找到的(最新版本):
- Google Chrome v30.0:没有任何问题。它选择
.mp4
了三种格式中质量最高的一种。伟大的。 - Opera v12.16:再次,有点令人惊讶的是,没有问题。与 Chrome 相同的行为。
- IE 11:从这里开始走下坡路。IE 11 等待整个视频完成缓冲,然后开始只播放音频。所以它是音频+海报。
- Firefox v24.0:与 IE 不同,它不会等待整个视频缓冲,但与 IE 一样,它只播放音频,不播放视频。我在某处读到 Firefox 确实支持
.mp4
播放,只要它是 Windows 7 或更高版本的操作系统。我正在使用 Windows 8。
然后我做了一些关于 Apache 的阅读。标头声明 Firefox 和 IE 都将 IE 识别mp4
为与其他 MIME 类型相反的类型。即便如此,我将以下内容添加到我的.htaccess
:
AddType video/ogg .ogv
AddType video/mp4 .mp4
AddType video/webm .webm
这并没有什么不同。
然后我交换了source
标签的顺序,以便.ogv
视频排在第一位。现在,视频也可以在 Firefox 中播放,但.ogv
质量不如.mp4
.
有问题的页面是这样的:http: //keyrecords.com/Artist%20Pages/haggard.html
我链接到上面的页面仅用于说明目的。在上面的页面上,.ogv
首先出现,所以是的,我知道它在 Firefox 中播放。
所以我的问题是:我需要做什么才能让 Firefox 和 IE 10/11 播放.mp4
?可以安全地假设这些是运行 Windows 7/8 机器的每个浏览器的最新版本。
编辑: MediaInfo 给了我有关文件的信息(看起来对吗?):