]> git.sesse.net Git - ffmpeg/blobdiff - doc/ffmpeg-doc.texi
update docs to reflect AVImageFormat removing
[ffmpeg] / doc / ffmpeg-doc.texi
index c9b7c2299485a07503d0a5b7a12896831cf5c567..8910dc679aa75a17199ed40fb87f242f55af8c44 100644 (file)
@@ -109,7 +109,7 @@ stream, in the order of the definition of output streams.
 * You can transcode decrypted VOBs
 
 @example
-ffmpeg -i snatch_1.vob -f avi -vcodec mpeg4 -b 800 -g 300 -bf 2 -acodec mp3 -ab 128 snatch.avi
+ffmpeg -i snatch_1.vob -f avi -vcodec mpeg4 -b 800k -g 300 -bf 2 -acodec mp3 -ab 128 snatch.avi
 @end example
 
 This is a typical DVD ripping example; the input is a VOB file, the
@@ -139,7 +139,7 @@ ffmpeg [[infile options][@option{-i} @var{infile}]]... @{[outfile options] @var{
 If no input file is given, audio/video grabbing is done.
 
 As a general rule, options are applied to the next specified
-file. For example, if you give the @option{-b 64} option, it sets the video
+file. For example, if you give the @option{-b 64k} option, it sets the video
 bitrate of the next file. The format option may be needed for raw input
 files.
 
@@ -190,6 +190,12 @@ Set the copyright.
 @item -comment string
 Set the comment.
 
+@item -track number
+Set the track.
+
+@item -year number
+Set the year.
+
 @item -target type
 Specify target file type ("vcd", "svcd", "dvd", "dv", "pal-vcd",
 "ntsc-svcd", ... ). All the format options (bitrate, codecs,
@@ -206,9 +212,6 @@ they do not conflict with the standard, as in:
 ffmpeg -i myfile.avi -target vcd -bf 2 /tmp/vcd.mpg
 @end example
 
-@item -hq
-Activate high quality settings.
-
 @item -itsoffset offset
 Set the input time offset in seconds.
 @code{[-]hh:mm:ss[.xxx]} syntax is also supported.
@@ -223,7 +226,7 @@ streams are delayed by 'offset' seconds.
 
 @table @option
 @item -b bitrate
-Set the video bitrate in kbit/s (default = 200 kb/s).
+Set the video bitrate in bit/s (default = 200 kb/s).
 @item -r fps
 Set frame rate (default = 25).
 @item -s size
@@ -266,13 +269,13 @@ blue (default = 000000 (black)).
 @item -vn
 Disable video recording.
 @item -bt tolerance
-Set video bitrate tolerance (in kbit/s).
+Set video bitrate tolerance (in bit/s).
 @item -maxrate bitrate
-Set max video bitrate tolerance (in kbit/s).
+Set max video bitrate tolerance (in bit/s).
 @item -minrate bitrate
-Set min video bitrate tolerance (in kbit/s).
+Set min video bitrate tolerance (in bit/s).
 @item -bufsize size
-Set rate control buffer size (in kbit).
+Set rate control buffer size (in bits).
 @item -vcodec codec
 Force video codec to @var{codec}. Use the @code{copy} special value to
 tell that the raw codec data must be copied as is.
@@ -298,17 +301,32 @@ Set the group of pictures size.
 @item -intra
 Use only intra frames.
 @item -qscale q
-Use fixed video quantiser scale (VBR).
+Use fixed video quantizer scale (VBR).
 @item -qmin q
-minimum video quantiser scale (VBR)
+minimum video quantizer scale (VBR)
 @item -qmax q
-maximum video quantiser scale (VBR)
+maximum video quantizer scale (VBR)
 @item -qdiff q
-maximum difference between the quantiser scales (VBR)
+maximum difference between the quantizer scales (VBR)
 @item -qblur blur
-video quantiser scale blur (VBR)
+video quantizer scale blur (VBR)
 @item -qcomp compression
-video quantiser scale compression (VBR)
+video quantizer scale compression (VBR)
+
+@item -lmin lambda
+minimum video lagrange factor (VBR)
+@item -lmax lambda
+max video lagrange factor (VBR)
+@item -mblmin lambda
+minimum macroblock quantizer scale (VBR)
+@item -mblmax lambda
+maximum macroblock quantizer scale (VBR)
+
+These four options (lmin, lmax, mblmin, mblmax) use 'lambda' units,
+but you may use the QP2LAMBDA constant to easily convert from 'q' units:
+@example
+ffmpeg -i src.ext -lmax 21*QP2LAMBDA dst.ext
+@end example
 
 @item -rc_init_cplx complexity
 initial complexity for single pass encoding
@@ -435,7 +453,7 @@ Enable Unlimited Motion Vector (h263+)
 
 @item -deinterlace
 Deinterlace pictures.
-@item -interlace
+@item -ilme
 Force interlacing support in encoder (MPEG-2 and MPEG-4 only).
 Use this option if your input file is interlaced and you want
 to keep the interlaced format for minimum losses.
@@ -464,6 +482,18 @@ Disable audio recording.
 @item -acodec codec
 Force audio codec to @var{codec}. Use the @code{copy} special value to
 specify that the raw codec data must be copied as is.
+@item -newaudio
+Add a new audio track to the output file. If you want to specify parameters,
+do so before @code{-newaudio} (@code{-acodec}, @code{-ab}, etc..).
+
+Mapping will be done automatically, if the number of output streams is equal to
+the number of input streams, else it will pick the first one that matches. You
+can override the mapping using @code{-map} as usual.
+
+Example:
+@example
+ffmpeg -i file.mpg -vcodec copy -acodec ac3 -ab 384 test.mpg -acodec mp2 -ab 192 -newaudio
+@end example
 @end table
 
 @section Audio/Video grab options
@@ -484,8 +514,10 @@ Set audio device (e.g. @file{/dev/dsp}).
 @section Advanced options
 
 @table @option
-@item -map file:stream
-Set input stream mapping.
+@item -map input stream id[:input stream id]
+Set stream mapping from input streams to output streams.
+Just enumerate the input streams in the order you want them in the output.
+[input stream id] sets the (input) stream to sync against.
 @item -debug
 Print specific debug info.
 @item -benchmark
@@ -505,12 +537,12 @@ streams. This option is used for automatic FFserver testing.
 Repeatedly loop output for formats that support looping such as animated GIF
 (0 will loop the output infinitely).
 @item -vsync parameter
-Video sync method. Video will be stretched/sqeezed to match the timestamps,
-it is done by duplicating and droping frames. With -map you can select from
-which stream the timestamps should be taken, you can leave either video or
+Video sync method. Video will be stretched/squeezed to match the timestamps,
+it is done by duplicating and dropping frames. With -map you can select from
+which stream the timestamps should be taken. You can leave either video or
 audio unchanged and sync the remaining stream(s) to the unchanged one.
 @item -async samples_per_second
-Audio sync method. "Stretches/sqeezes" the audio stream to match the timestamps,
+Audio sync method. "Stretches/squeezes" the audio stream to match the timestamps,
 the parameter is the maximum samples per second by which the audio is changed.
 -async 1 is a special case where only the start of the audio stream is corrected
 without any later correction.
@@ -613,7 +645,7 @@ the Linux player does not seem to be very fast, so it can miss
 frames. An example is:
 
 @example
-ffmpeg -g 3 -r 3 -t 10 -b 50 -s qcif -f rv10 /tmp/b.rm
+ffmpeg -g 3 -r 3 -t 10 -b 50k -s qcif -f rv10 /tmp/b.rm
 @end example
 
 @item  The parameter 'q' which is displayed while encoding is the current
@@ -714,7 +746,14 @@ library:
 @tab Multimedia format used by the Creature Shock game.
 @item Smacker @tab    @tab X
 @tab Multimedia format used by many games.
-@item GXF @tab    @tab X
+@item GXF @tab  X @tab X
+@tab General eXchange Format SMPTE 360M, used by Thomson Grass Valley playout servers.
+@item CIN @tab    @tab X
+@tab Multimedia format used by Delphine Software games.
+@item MXF @tab    @tab X
+@tab Material eXchange Format SMPTE 377M, used by D-Cinema, broadcast industry.
+@item SEQ @tab    @tab X
+@tab Tiertex .seq files used in the DOS CDROM version of the game Flashback.
 @end multitable
 
 @code{X} means that encoding (resp. decoding) is supported.
@@ -733,6 +772,8 @@ following image formats are supported:
 @item .Y.U.V       @tab X @tab X @tab one raw file per component
 @item animated GIF @tab X @tab X @tab Only uncompressed GIFs are generated.
 @item PNG          @tab X @tab X @tab 2 bit and 4 bit/pixel not supported yet.
+@item Targa        @tab   @tab X @tab Targa (.TGA) image format.
+@item TIFF         @tab   @tab X @tab Only 24 bit/pixel images are supported.
 @item SGI          @tab X @tab X @tab SGI RGB image format
 @end multitable
 
@@ -744,10 +785,10 @@ following image formats are supported:
 @item Supported Codec @tab Encoding @tab Decoding @tab Comments
 @item MPEG-1 video           @tab  X  @tab  X
 @item MPEG-2 video           @tab  X  @tab  X
-@item MPEG-4                 @tab  X  @tab  X @tab also known as DivX4/5
+@item MPEG-4                 @tab  X  @tab  X
 @item MSMPEG4 V1             @tab  X  @tab  X
 @item MSMPEG4 V2             @tab  X  @tab  X
-@item MSMPEG4 V3             @tab  X  @tab  X @tab also known as DivX3
+@item MSMPEG4 V3             @tab  X  @tab  X
 @item WMV7                   @tab  X  @tab  X
 @item WMV8                   @tab  X  @tab  X @tab not completely working
 @item H.261                  @tab  X  @tab  X
@@ -770,6 +811,8 @@ following image formats are supported:
 @item Sorenson Video 1       @tab  X  @tab  X @tab fourcc: SVQ1
 @item Sorenson Video 3       @tab     @tab  X @tab fourcc: SVQ3
 @item On2 VP3                @tab     @tab  X @tab still experimental
+@item On2 VP5                @tab     @tab  X @tab fourcc: VP50
+@item On2 VP6                @tab     @tab  X @tab fourcc: VP62
 @item Theora                 @tab     @tab  X @tab still experimental
 @item Intel Indeo 3          @tab     @tab  X
 @item FLV                    @tab  X  @tab  X @tab Sorenson H.263 used in Flash
@@ -813,14 +856,13 @@ following image formats are supported:
 @item Smacker Video          @tab     @tab  X @tab Video encoding used in Smacker.
 @item RTjpeg                 @tab     @tab  X @tab Video encoding used in NuppelVideo files.
 @item KMVC                   @tab     @tab  X @tab Codec used in Worms games.
+@item VMware Video           @tab     @tab  X @tab Codec used in videos captured by VMware.
+@item Cin Video              @tab     @tab  X @tab Codec used in Delphine Software games.
+@item Tiertex Seq Video      @tab     @tab  X @tab Codec used in DOS CDROM FlashBack game.
 @end multitable
 
 @code{X} means that encoding (resp. decoding) is supported.
 
-See @url{http://mplayerhq.hu/~michael/codec-features.html} to
-get a precise comparison of the FFmpeg MPEG-4 codec compared to
-other implementations.
-
 @section Audio Codecs
 
 @multitable @columnfractions .4 .1 .1 .1 .7
@@ -889,6 +931,10 @@ other implementations.
 @item DSP Group TrueSpeech   @tab      @tab X
 @item True Audio (TTA)       @tab      @tab X
 @item Smacker Audio          @tab      @tab X
+@item WavPack Audio          @tab      @tab X
+@item Cin Audio              @tab      @tab X
+@tab Codec used in Delphine Software games.
+@item Intel Music Coder      @tab      @tab X
 @end multitable
 
 @code{X} means that encoding (resp. decoding) is supported.
@@ -1357,9 +1403,9 @@ please use av_log() instead.
     parts (libavutil, libavcodec, libavformat) you are changing. You need
     to change the version integer and the version string.
     Incrementing the first component means no backward compatibility to
-    previous versions (e.g. removal of a function).
+    previous versions (e.g. removal of a function from the public API).
     Incrementing the second component means backward compatible change
-    (e.g. addition of a function).
+    (e.g. addition of a function to the public API).
     Incrementing the third component means a noteworthy binary compatible
     change (e.g. encoder bug fix that matters for the decoder).
 @item