我有一个将视频旋转 90 度的脚本,然后使用flowplayer(HTML5 版本,而不是 Flash)将视频显示在网页上。视频旋转一次后,它在 IE9 中不播放,但在 Chrome 和 Firefox 中播放没有任何其他问题。错误消息是:找不到视频文件。
我查看了 IE9 的开发人员工具控制台、网络选项卡和浏览器流式传输整个视频。
以下是我用来旋转和转换视频的 ffmpeg 命令:
ffmpeg -i input.mov -y -r 30 -b 4M -vf 'transpose=1,scale=800:trunc(ow/a/2)*2' -ar 48000 -vcodec libx264 -profile baseline -preset slow -level 2.2 output.mp4
这是我使用的输入文件:https ://dl.dropboxusercontent.com/u/37994/local%20capture.mov
这是输出视频:https ://dl.dropboxusercontent.com/u/37994/local%20capture%20rotated.mp4
上面的输入视频是在 Mac OS 上使用 QuickTime 制作的屏幕截图。
这个视频也发生了这种情况:http: //mirrorblender.top-ix.org/peach/bigbuckbunny_movies/big_buck_bunny_480p_h264.mov 还有这个:https ://dl.dropboxusercontent.com/u/37994/clipcanvas_14348_offline.mp4
此处的示例 .mov 没有发生这种情况:http: //support.apple.com/kb/ht1425
如果我运行该命令两次,这意味着我将视频旋转 90 度,然后再次使用相同的命令旋转输出,问题就会消失,但我只需要能够旋转 90 度。
如果我将 IE9 置于 IE7 或 IE8 兼容模式,则不会出现此问题。
我在想问题可能是服务器如何提供视频,但其他视频没有问题。
我用 ffmpeg 查看了元数据,但没有看到任何重要的东西。
我已经AddType video/mp4 .mp4
在 .htaccess 中了。
我似乎无法确定导致此问题的原因。
编辑:
IE9 中的请求
IE9 中的响应