| @@ -24,10 +24,10 @@ No. Windows DLLs are not portable, bloated and often slow. | |||
| Moreover Libav strives to support all codecs natively. | |||
| A DLL loader is not conducive to that goal. | |||
| @section I cannot read this file although this format seems to be supported by ffmpeg. | |||
| @section I cannot read this file although this format seems to be supported by avconv. | |||
| Even if ffmpeg can read the container format, it may not support all its | |||
| codecs. Please consult the supported codec list in the ffmpeg | |||
| Even if avconv can read the container format, it may not support all its | |||
| codecs. Please consult the supported codec list in the avconv | |||
| documentation. | |||
| @section Which codecs are supported by Windows? | |||
| @@ -81,12 +81,6 @@ problem and an NP-hard problem... | |||
| @chapter Usage | |||
| @section ffmpeg does not work; what is wrong? | |||
| Try a @code{make distclean} in the ffmpeg source directory before the build. | |||
| If this does not help see our | |||
| @uref{http://libav.org/bugreports.html, bug reporting guidelines}. | |||
| @section How do I encode single pictures into movies? | |||
| First, rename your pictures to follow a numerical sequence. | |||
| @@ -94,7 +88,7 @@ For example, img1.jpg, img2.jpg, img3.jpg,... | |||
| Then you may run: | |||
| @example | |||
| ffmpeg -f image2 -i img%d.jpg /tmp/a.mpg | |||
| avconv -f image2 -i img%d.jpg /tmp/a.mpg | |||
| @end example | |||
| Notice that @samp{%d} is replaced by the image number. | |||
| @@ -117,17 +111,17 @@ If you want to sequence them by oldest modified first, substitute | |||
| Then run: | |||
| @example | |||
| ffmpeg -f image2 -i /tmp/img%03d.jpg /tmp/a.mpg | |||
| avconv -f image2 -i /tmp/img%03d.jpg /tmp/a.mpg | |||
| @end example | |||
| The same logic is used for any image format that ffmpeg reads. | |||
| The same logic is used for any image format that avconv reads. | |||
| @section How do I encode movie to single pictures? | |||
| Use: | |||
| @example | |||
| ffmpeg -i movie.mpg movie%d.jpg | |||
| avconv -i movie.mpg movie%d.jpg | |||
| @end example | |||
| The @file{movie.mpg} used as input will be converted to | |||
| @@ -135,15 +129,15 @@ The @file{movie.mpg} used as input will be converted to | |||
| Instead of relying on file format self-recognition, you may also use | |||
| @table @option | |||
| @item -vcodec ppm | |||
| @item -vcodec png | |||
| @item -vcodec mjpeg | |||
| @item -c:v ppm | |||
| @item -c:v png | |||
| @item -c:v mjpeg | |||
| @end table | |||
| to force the encoding. | |||
| Applying that to the previous example: | |||
| @example | |||
| ffmpeg -i movie.mpg -f image2 -vcodec mjpeg menu%d.jpg | |||
| avconv -i movie.mpg -f image2 -c:v mjpeg menu%d.jpg | |||
| @end example | |||
| Beware that there is no "jpeg" codec. Use "mjpeg" instead. | |||
| @@ -165,13 +159,13 @@ Try '-f image2 test%d.jpg'. | |||
| @section Why can I not change the framerate? | |||
| Some codecs, like MPEG-1/2, only allow a small number of fixed framerates. | |||
| Choose a different codec with the -vcodec command line option. | |||
| Choose a different codec with the -c:v command line option. | |||
| @section How do I encode Xvid or DivX video with ffmpeg? | |||
| @section How do I encode Xvid or DivX video with avconv? | |||
| Both Xvid and DivX (version 4+) are implementations of the ISO MPEG-4 | |||
| standard (note that there are many other coding formats that use this | |||
| same standard). Thus, use '-vcodec mpeg4' to encode in these formats. The | |||
| same standard). Thus, use '-c:v mpeg4' to encode in these formats. The | |||
| default fourcc stored in an MPEG-4-coded file will be 'FMP4'. If you want | |||
| a different fourcc, use the '-vtag' option. E.g., '-vtag xvid' will | |||
| force the fourcc 'xvid' to be stored as the video fourcc rather than the | |||
| @@ -188,7 +182,7 @@ things to try: '-bf 2', '-flags qprd', '-flags mv0', '-flags skiprd'. | |||
| but beware the '-g 100' might cause problems with some decoders. | |||
| Things to try: '-bf 2', '-flags qprd', '-flags mv0', '-flags skiprd. | |||
| @section Interlaced video looks very bad when encoded with ffmpeg, what is wrong? | |||
| @section Interlaced video looks very bad when encoded with avconv, what is wrong? | |||
| You should use '-flags +ilme+ildct' and maybe '-flags +alt' for interlaced | |||
| material, and try '-top 0/1' if the result looks really messed-up. | |||
| @@ -203,9 +197,9 @@ Just create an "input.avs" text file with this single line ... | |||
| @example | |||
| DirectShowSource("C:\path to your file\yourfile.asf") | |||
| @end example | |||
| ... and then feed that text file to ffmpeg: | |||
| ... and then feed that text file to avconv: | |||
| @example | |||
| ffmpeg -i input.avs | |||
| avconv -i input.avs | |||
| @end example | |||
| For ANY other help on Avisynth, please visit the | |||
| @@ -222,13 +216,13 @@ equally humble @code{copy} under Windows), and finally transcoding back to your | |||
| format of choice. | |||
| @example | |||
| ffmpeg -i input1.avi -sameq intermediate1.mpg | |||
| ffmpeg -i input2.avi -sameq intermediate2.mpg | |||
| avconv -i input1.avi -same_quant intermediate1.mpg | |||
| avconv -i input2.avi -same_quant intermediate2.mpg | |||
| cat intermediate1.mpg intermediate2.mpg > intermediate_all.mpg | |||
| ffmpeg -i intermediate_all.mpg -sameq output.avi | |||
| avconv -i intermediate_all.mpg -same_quant output.avi | |||
| @end example | |||
| Notice that you should either use @code{-sameq} or set a reasonably high | |||
| Notice that you should either use @code{-same_quant} or set a reasonably high | |||
| bitrate for your intermediate and output files, if you want to preserve | |||
| video quality. | |||
| @@ -238,10 +232,10 @@ of named pipes, should your platform support it: | |||
| @example | |||
| mkfifo intermediate1.mpg | |||
| mkfifo intermediate2.mpg | |||
| ffmpeg -i input1.avi -sameq -y intermediate1.mpg < /dev/null & | |||
| ffmpeg -i input2.avi -sameq -y intermediate2.mpg < /dev/null & | |||
| avconv -i input1.avi -same_quant -y intermediate1.mpg < /dev/null & | |||
| avconv -i input2.avi -same_quant -y intermediate2.mpg < /dev/null & | |||
| cat intermediate1.mpg intermediate2.mpg |\ | |||
| ffmpeg -f mpeg -i - -sameq -vcodec mpeg4 -acodec libmp3lame output.avi | |||
| avconv -f mpeg -i - -same_quant -c:v mpeg4 -acodec libmp3lame output.avi | |||
| @end example | |||
| Similarly, the yuv4mpegpipe format, and the raw video, raw audio codecs also | |||
| @@ -260,15 +254,15 @@ mkfifo temp2.a | |||
| mkfifo temp2.v | |||
| mkfifo all.a | |||
| mkfifo all.v | |||
| ffmpeg -i input1.flv -vn -f u16le -acodec pcm_s16le -ac 2 -ar 44100 - > temp1.a < /dev/null & | |||
| ffmpeg -i input2.flv -vn -f u16le -acodec pcm_s16le -ac 2 -ar 44100 - > temp2.a < /dev/null & | |||
| ffmpeg -i input1.flv -an -f yuv4mpegpipe - > temp1.v < /dev/null & | |||
| @{ ffmpeg -i input2.flv -an -f yuv4mpegpipe - < /dev/null | tail -n +2 > temp2.v ; @} & | |||
| avconv -i input1.flv -vn -f u16le -acodec pcm_s16le -ac 2 -ar 44100 - > temp1.a < /dev/null & | |||
| avconv -i input2.flv -vn -f u16le -acodec pcm_s16le -ac 2 -ar 44100 - > temp2.a < /dev/null & | |||
| avconv -i input1.flv -an -f yuv4mpegpipe - > temp1.v < /dev/null & | |||
| @{ avconv -i input2.flv -an -f yuv4mpegpipe - < /dev/null | tail -n +2 > temp2.v ; @} & | |||
| cat temp1.a temp2.a > all.a & | |||
| cat temp1.v temp2.v > all.v & | |||
| ffmpeg -f u16le -acodec pcm_s16le -ac 2 -ar 44100 -i all.a \ | |||
| avconv -f u16le -acodec pcm_s16le -ac 2 -ar 44100 -i all.a \ | |||
| -f yuv4mpegpipe -i all.v \ | |||
| -sameq -y output.flv | |||
| -same_quant -y output.flv | |||
| rm temp[12].[av] all.[av] | |||
| @end example | |||
| @@ -304,7 +298,7 @@ the silver bullet that solves this problem, feel free to shoot it at us. | |||
| We strongly recommend you to move over from MSVC++ to MinGW tools. | |||
| @section Can I use Libav or libavcodec under Windows? | |||
| @section Can I use Libav under Windows? | |||
| Yes, but the Cygwin or MinGW tools @emph{must} be used to compile Libav. | |||
| Read the @emph{Windows} section in the Libav documentation to find more | |||
| @@ -314,7 +308,7 @@ information. | |||
| No. These tools are too bloated and they complicate the build. | |||
| @section Why not rewrite ffmpeg in object-oriented C++? | |||
| @section Why not rewrite Libav in object-oriented C++? | |||
| Libav is already organized in a highly modular manner and does not need to | |||
| be rewritten in a formal object language. Further, many of the developers | |||
| @@ -327,7 +321,7 @@ Yes, as long as the code is optional and can easily and cleanly be placed | |||
| under #if CONFIG_GPL without breaking anything. So for example a new codec | |||
| or filter would be OK under GPL while a bug fix to LGPL code would not. | |||
| @section I'm using libavcodec from within my C++ application but the linker complains about missing symbols which seem to be available. | |||
| @section I'm using Libav from within my C++ application but the linker complains about missing symbols which seem to be available. | |||
| Libav is a pure C project, so to use the libraries within your C++ application | |||
| you need to explicitly state that you are using a C library. You can do this by | |||