【发布时间】:2014-09-01 20:15:38
【问题描述】:
我正在尝试以 MP4 和 WEBM 格式提供 HTML5 视频。我无法让所有浏览器都工作:
支持 WEBM(Chrome 桌面、Firefox 桌面)的浏览器可以正常播放视频。
使用 MP4 的浏览器无法正常工作(IE、Safari、Android)。
WEBM 服务为
video/webm。正在以
video/mp4的身份提供MP4。
最小 JSFiddle 位于:http://jsfiddle.net/#&togetherjs=5Ql5MmrV4j
浏览器错误:
-
IE11:11.0.9600.17126 / 11.0.9 KB2957689
Error: Unsupported video type of invalid file path -
Android 浏览器和 Chrome Android:
没有错误,视频只是拒绝开始
健全性测试 - 以下三个值相等:
收到的文件大小:
curl <video URL> | wc -c实际文件大小:
stat -c %s <video file>服务器指定的文件大小:
Content-LengthHTTP 标头。
有问题的视频之一位于:
-
MP4:http://hackology.co.uk/wp-content/uploads/2014/06/hd720-24.mp4
Content-Type: video/mp4无法在 Chrome / IE11 / Chrome Android / Android 浏览器中播放
在 VLC 中播放
FFMPEG编码参数:
-an -vcodec libx264 -s hd720 -flags +loop+mv4 -cmp 256 -partitions +parti4x4+parti8x8+partp4x4+partp8x8 -subq 6 -trellis 0 -refs 5 -bf 0 -coder 0 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -qmin 10 -qmax 51 -qdiff 4 -movflags faststart这些是通过深入搜索为移动浏览器编码 MP4 的最佳方式而收集的。 如果我使用
-an -vcodec libx264 -s hd720,那么该视频也无法在浏览器中播放。 -
WEBM:http://hackology.co.uk/wp-content/uploads/2014/06/hd720-24.webm
Content-Type: video/webm在 Chrome/Firefox 中播放
FFMPEG编码参数:
-an -vcodec libvpx -s hd720
相关的 HTML(课程、海报等已删除):
<video preload="metadata" controls="controls">
<source type="video/mp4" src="http://hackology.co.uk/wp-content/uploads/2014/06/hd720-24.mp4">
<source type="video/webm" src="http://hackology.co.uk/wp-content/uploads/2014/06/hd720-24.webm">
</video>
【问题讨论】:
标签: google-chrome cross-browser html5-video mp4 internet-explorer-11