我希望制作一个包含安全摄像机录制的影片的网页。每个录像机都会传输DAV格式的视频文件,因此使用以下语法将每个电影转换为MP4格式:
ffmpeg -y -i movie.dav -vcodec libx264 -crf 24 movie.mp4
所以我在HTMLv5代码中包含了以下内容:
<video width="320" height="240">
<source src="movie.mp4" type="video/mp4">
</video>
在使用Chrome浏览器时,一切正常,但在Firefox浏览器中却存在问题。为了在Firefox中正确工作,需要添加OGG文件的链接。因此,两个浏览器下正确的HTMLv5语法应该如下:
<video width="320" height="240">
<source src="movie.mp4" type="video/mp4">
<source src="movie.ogg" type="video/ogg">
</video>
有人能帮我传递正确的FFmpeg语法来创建OGG文件吗?
使用-movflags +faststart选项后,从控制台输出的结果如下:
[maciek@piotr MMM]$ ../ffmpeg-2.4.2-64bit-static/ffmpeg -movflags +faststart -y -i 04.24.23-04.24.38\[M\]\[@0\]\[0\].dav -vcodec libx264 -crf 24 10.mp4
ffmpeg version 2.4.2- http://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2014 the FFmpeg developers
built on Oct 9 2014 07:24:56 with gcc 4.8 (Debian 4.8.3-11)
configuration: --enable-gpl --enable-version3 --disable-shared --disable-debug --enable-runtime-cpudetect --enable-libmp3lame --enable-libx264 --enable-libx265 --enable- libwebp --enable-libspeex --enable-libvorbis --enable-libvpx --enable-libfreetype --enable-fontconfig --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-gray --enable-libopenjpeg --enable-libopus --disable-ffserver --enable-libass --enable-gnutls --cc=gcc-4.8
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.101 / 56. 4.101
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.100 / 5. 1.100
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Option movflags not found.
ffmpeg
命令的输出选项中添加-movflags +faststart
以用于 MP4 输出。它将把 MOOV 原子重定位到文件开头;否则客户端在播放之前必须下载完整文件。 - llogan