ffmpeg将mov文件转换为mp4的HTML5视频标签IE9

前端之家收集整理的这篇文章主要介绍了ffmpeg将mov文件转换为mp4的HTML5视频标签IE9前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我看着无处不在这里和谷歌 – 没有有效的命令,适用于IE9。
一些如何IE9丢失的东西。
我所有的尝试工作在其他地方:chrome,safari,移动设备等…
我想要一个命令,将转换它,我可以使用它在每个设备假设支持mp4在HTML5视频标签

我使用这个命令:

ffmpeg -i movie.mov -vcodec copy -acodec copy out.mp4
ffmpeg -i movie.mov -vcodec libx264 -vprofile high -preset slow -b:v 500k -maxrate 500k -bufsize 1000k -vf scale=-1:480 -threads 0 -acodec libvo_aacenc -b:a 128k -pix_fmt yuv420p outa.mp4
ffmpeg -i movie.mov -b:V 1500k -vcodec libx264 -preset fast -g 30 adel.mp4
ffmpeg -i movie.mov -acodec aac -strict experimental -ac 2 -ab 160k -vcodec libx264 -preset slow -f mp4 -crf 22 lamlam.mp4
ffmpeg -i movie.mov -acodec aac -strict experimental -ac 2 -ab 160k -vcodec libx264 -preset slow -profile:v baseline -level 30 -maxrate 10000000 -bufsize 10000000 -f mp4 -threads 0 adiel.mp4

所有这些命令产生一个有效的mp4文件,它工作在chrome,safari等…和工作,即使我在Windows本身使用窗口媒体播放器启动他们。
当我把这个文件在视频标签(我使用http://videojs.com/)在IE9它不工作!

<div class="vidoco-content" style="margin-top: 20px;">
<video id="divVid" class="video-js vjs-default-skin vidoco-center" controls preload="none" width="600" height="400" poster="<?PHP echo(DOMAIN); ?>static/test.jpg">
    <source src="<?PHP echo(DOMAIN); ?>static/out.mp4" type="video/mp4" />
</video>

如果我使用软件miro video converter将相同的mov文件转换为mp4 – 它转换得很好,我可以在IE9中播放!
miro转换器也使用了嵌入ffmpeg里面,所以我相信它只是一个metter的正确的ffmpeg命令和参数。
在我的apache htaccess我设置正确的MIME类型为我的文件,我看到它确实是正确的,当看看IE开发工具:

AddType audio/aac .aac
AddType audio/mp4 .mp4 .m4a
AddType audio/mpeg .mp1 .mp2 .mp3 .mpg .mpeg
AddType audio/ogg .oga .ogg
AddType audio/wav .wav
AddType audio/webm .webm

AddType video/mp4 .mp4 .m4v
AddType video/ogg .ogv
AddType video/webm .webm

我一直在努力这个很长一段时间,所以任何帮助将非常感激。

谢谢!

解决方法

对于ffmpeg:
ffmpeg -i {input}.mov -vcodec h264 -acodec aac -strict -2 {output}.mp4

您还可以添加-q:v / -q:a参数以指定视频的质量。你也可以使用Handbrake这是比ffmpeg更简单的编码器。

对于HandBrake:

handbrakecli -i {input}.mov -e x264 -E facc -o {output}.mp4

编辑:我找到了解决方案!这里是一个带有工作演示的ZIP,我在IE 9和Firefox上测试!

http://www.mediafire.com/download/kyavlpudybg0bc1/HTML5_video.zip

此外,上面的演示有一个闪回,所以它应该工作在IE8和更少。

使用了相同的ffmpeg命令。
编辑:我不得不重新上传视频,因为我的托管服务现在已经关闭。现在它是在mediafire上托管。我发现他们是最好的文件共享服务。最小广告,没有注册,没有30秒等待。

另外,看看这个讨论在videojs网站:http://help.videojs.com/discussions/problems/1020-ffmpeg-command-produce-your-demonstration-video

很重要!确保在本地运行时点击“允许活动内容”按钮允许视频播放!

视频的问题我有我的解决方案:看到我上面提到的演示。

测试时使用的HTML代码

<!DOCTYPE html>
<html>
<body>

<video width="320" height="240" controls>
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.ogg" type="video/ogg">
  Your browser does not support the video tag.
</video>

</body>
</html>

我分析了w3schools提供的工作测试视频(它在IE上工作),我发现他们使用HandBrake对视频进行编码。

Input #0,mov,mp4,m4a,3gp,3g2,mj2,from 'movie.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp42isomavc1
    creation_time   : 2010-05-11 10:32:06
    encoder         : HandBrake 0.9.4 2009112300
  Duration: 00:00:12.61,start: 0.000000,bitrate: 202 kb/s
    Chapter #0.0: start 0.000000,end 12.612000
    Metadata:
      title           :
    Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661),yuv420p,320x240,80 kb/s,29.65 fps,29.97 tbr,90k tbn,59.31 tbc
    Metadata:
      creation_time   : 2010-05-11 10:32:06
    Stream #0:1(und): Audio: aac (mp4a / 0x6134706D),48000 Hz,stereo,fltp,115 kb/s
    Metadata:
      creation_time   : 2010-05-11 10:32:06
    Stream #0:2(und): Subtitle: mov_text (text / 0x74786574)
    Metadata:
      creation_time   : 2010-05-11 10:32:06`

猜你在找的HTML5相关文章