现在的位置: 首页 > 综合 > 正文

ffmpeg user manual

2013年09月25日 ⁄ 综合 ⁄ 共 9853字 ⁄ 字号 评论关闭
转载自:http://www.tin.org/bin/man.cgi?section=1&topic=ffmpeg
NAME
       ffmpeg - FFmpeg video converter

SYNOPSIS
       ffmpeg [[infile options][-i infile]]... {[outfile options] outfile}...

DESCRIPTION
       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 -b 64 option, it sets the video bitrate of the
       next file. The format option may be needed for raw input files.

       By default, FFmpeg tries to convert as losslessly as possible: It uses
       the same audio and video parameters for the outputs as the one speci-
       fied for the inputs.

OPTIONS
       Main options

       -L  Show license.

       -h  Show help.

       -formats
           Show available formats, codecs, protocols, ...

       -f fmt
           Force format.

       -i filename
           input filename

       -y  Overwrite output files.

       -t duration
           Set the recording time in seconds.  "hh:mm:ss[.xxx]" syntax is also
           supported.

       -ss position
           Seek to given time position in seconds.  "hh:mm:ss[.xxx]" syntax is
           also supported.

       -title string
           Set the title.

       -author string
           Set the author.

       -copyright string
           Set the copyright.

       -comment string
           Set the comment.

       -target type
           Specify target file type ("vcd", "svcd", "dvd", "dv", "pal-vcd",
           "ntsc-svcd", ... ). All the format options (bitrate, codecs, buffer
           sizes) are then set automatically. You can just type:

                   ffmpeg -i myfile.avi -target vcd /tmp/vcd.mpg

           Nevertheless you can specify additional options as long as you know
           they do not conflict with the standard, as in:

                   ffmpeg -i myfile.avi -target vcd -bf 2 /tmp/vcd.mpg

       -hq Activate high quality settings.

       -itsoffset offset
           Set the input time offset in seconds.  "[-]hh:mm:ss[.xxx]" syntax
           is also supported.  This option affects all the input files that
           follow it.  The offset is added to the timestamps of the input
           files.  Specifying a positive offset means that the corresponding
           streams are delayed by 'offset' seconds.

       Video Options

       -b bitrate
           Set the video bitrate in kbit/s (default = 200 kb/s).

       -r fps
           Set frame rate (default = 25).

       -s size
           Set frame size. The format is wxh (default = 160x128).  The follow-
           ing abbreviations are recognized:

           sqcif
               128x96

           qcif
               176x144

           cif 352x288

           4cif
               704x576

       -aspect aspect
           Set aspect ratio (4:3, 16:9 or 1.3333, 1.7777).

       -croptop size
           Set top crop band size (in pixels).

       -cropbottom size
           Set bottom crop band size (in pixels).

       -cropleft size
           Set left crop band size (in pixels).

       -cropright size
           Set right crop band size (in pixels).

       -padtop size
           Set top pad band size (in pixels).

       -padbottom size
           Set bottom pad band size (in pixels).

       -padleft size
           Set left pad band size (in pixels).

       -padright size
           Set right pad band size (in pixels).

       -padcolor (hex color)
           Set color of padded bands. The value for padcolor is expressed as a
           six digit hexadecimal number where the first two digits represent
           red, the middle two digits green and last two digits blue (default
           = 000000 (black)).

       -vn Disable video recording.

       -bt tolerance
           Set video bitrate tolerance (in kbit/s).

       -maxrate bitrate
           Set max video bitrate tolerance (in kbit/s).

       -minrate bitrate
           Set min video bitrate tolerance (in kbit/s).

       -bufsize size
           Set rate control buffer size (in kbit).

       -vcodec codec
           Force video codec to codec. Use the "copy" special value to tell
           that the raw codec data must be copied as is.

       -sameq
           Use same video quality as source (implies VBR).

       -pass n
           Select the pass number (1 or 2). It is useful to do two pass encod-
           ing. The statistics of the video are recorded in the first pass and
           the video is generated at the exact requested bitrate in the second
           pass.

       -passlogfile file
           Set two pass logfile name to file.

       Advanced Video Options

       -g gop_size
           Set the group of pictures size.

       -intra
           Use only intra frames.

       -qscale q
           Use fixed video quantiser scale (VBR).

       -qmin q
           minimum video quantiser scale (VBR)

       -qmax q
           maximum video quantiser scale (VBR)

       -qdiff q
           maximum difference between the quantiser scales (VBR)

       -qblur blur
           video quantiser scale blur (VBR)

       -qcomp compression
           video quantiser scale compression (VBR)

       -rc_init_cplx complexity
           initial complexity for single pass encoding

       -b_qfactor factor
           qp factor between P- and B-frames

       -i_qfactor factor
           qp factor between P- and I-frames

       -b_qoffset offset
           qp offset between P- and B-frames

       -i_qoffset offset
           qp offset between P- and I-frames

       -rc_eq equation
           Set rate control equation (default = "tex^qComp").

       -rc_override override
           rate control override for specific intervals

       -me method
           Set motion estimation method to method.  Available methods are
           (from lowest to best quality):

           zero
               Try just the (0, 0) vector.

           phods
           log
           x1
           epzs
               (default method)

           full
               exhaustive search (slow and marginally better than epzs)

       -dct_algo algo
           Set DCT algorithm to algo. Available values are:

           0   FF_DCT_AUTO (default)

           1   FF_DCT_FASTINT

           2   FF_DCT_INT

           3   FF_DCT_MMX

           4   FF_DCT_MLIB

           5   FF_DCT_ALTIVEC

       -idct_algo algo
           Set IDCT algorithm to algo. Available values are:

           0   FF_IDCT_AUTO (default)

           1   FF_IDCT_INT

           2   FF_IDCT_SIMPLE

           3   FF_IDCT_SIMPLEMMX

           4   FF_IDCT_LIBMPEG2MMX

           5   FF_IDCT_PS2

           6   FF_IDCT_MLIB

           7   FF_IDCT_ARM

           8   FF_IDCT_ALTIVEC

           9   FF_IDCT_SH4

           10  FF_IDCT_SIMPLEARM

       -er n
           Set error resilience to n.

           1   FF_ER_CAREFUL (default)

           2   FF_ER_COMPLIANT

           3   FF_ER_AGGRESSIVE

           4   FF_ER_VERY_AGGRESSIVE

       -ec bit_mask
           Set error concealment to bit_mask. bit_mask is a bit mask of the
           following values:

           1   FF_EC_GUESS_MVS (default = enabled)

           2   FF_EC_DEBLOCK (default = enabled)

       -bf frames
           Use 'frames' B-frames (supported for MPEG-1, MPEG-2 and MPEG-4).

       -mbd mode
           macroblock decision

           0   FF_MB_DECISION_SIMPLE: Use mb_cmp (cannot change it yet in FFm-
               peg).

           1   FF_MB_DECISION_BITS: Choose the one which needs the fewest
               bits.

           2   FF_MB_DECISION_RD: rate distortion

       -4mv
           Use four motion vector by macroblock (MPEG-4 only).

       -part
           Use data partitioning (MPEG-4 only).

       -bug param
           Work around encoder bugs that are not auto-detected.

       -strict strictness
           How strictly to follow the standards.

       -aic
           Enable Advanced intra coding (h263+).

       -umv
           Enable Unlimited Motion Vector (h263+)

       -deinterlace
           Deinterlace pictures.

       -interlace
           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.  The alternative is to
           deinterlace the input stream with -deinterlace, but deinterlacing
           introduces losses.

       -psnr
           Calculate PSNR of compressed frames.

       -vstats
           Dump video coding statistics to vstats_HHMMSS.log.

       -vhook module
           Insert video processing module. module contains the module name and
           its parameters separated by spaces.

       Audio Options

       -ar freq
           Set the audio sampling frequency (default = 44100 Hz).

       -ab bitrate
           Set the audio bitrate in kbit/s (default = 64).

       -ac channels
           Set the number of audio channels (default = 1).

       -an Disable audio recording.

       -acodec codec
           Force audio codec to codec. Use the "copy" special value to specify
           that the raw codec data must be copied as is.

       Audio/Video grab options

       -vd device
           sEt video grab device (e.g. /dev/video0).

       -vc channel
           Set video grab channel (DV1394 only).

       -tvstd standard
           Set television standard (NTSC, PAL (SECAM)).

       -dv1394
           Set DV1394 grab.

       -ad device
           Set audio device (e.g. /dev/dsp).

       Advanced options

       -map file:stream
           Set input stream mapping.

       -debug
           Print specific debug info.

       -benchmark
           Add timings for benchmarking.

       -hex
           Dump each input packet.

       -bitexact
           Only use bit exact algorithms (for codec testing).

       -ps size
           Set packet size in bits.

       -re Read input at native frame rate. Mainly used to simulate a grab
           device.

       -loop
           Loop over the input stream. Currently it works only for image
           streams. This option is used for automatic FFserver testing.

       -loop_output number_of_times
           Repeatedly loop output for formats that support looping such as
           animated GIF (0 will loop the output infinitely).

       -vsync parameter
           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.

       -async samples_per_second
           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 cor-
           rection.

       FFmpeg formula evaluator

       When evaluating a rate control string, FFmpeg uses an internal formula
       evaluator.

       The following binary operators are available: "+", "-", "*", "/", "^".

       The following unary operators are available: "+", "-", "(...)".

       The following functions are available:

       sinh(x)
       cosh(x)
       tanh(x)
       sin(x)
       cos(x)
       tan(x)
       exp(x)
       log(x)
       squish(x)
       gauss(x)
       abs(x)
       max(x, y)
       min(x, y)
       gt(x, y)
       lt(x, y)
       eq(x, y)
       bits2qp(bits)
       qp2bits(qp)

       The following constants are available:

       PI
       E
       iTex
       pTex
       tex
       mv
       fCode
       iCount
       mcVar
       var
       isI
       isP
       isB
       avgQP
       qComp
       avgIITex
       avgPITex
       avgPPTex
       avgBPTex
       avgTex

EXAMPLES
       Video and Audio grabbing

       FFmpeg can use a video4linux compatible video source and any Open Sound
       System audio source:

               ffmpeg /tmp/out.mpg

       Note that you must activate the right video source and channel before
       launching FFmpeg with any TV viewer such as xawtv (<http://byte-
       sex.org/xawtv/>) by Gerd Knorr. You also have to set the audio record-
       ing levels correctly with a standard mixer.

       Video and Audio file format conversion

       * FFmpeg can use any supported file format and protocol as input:

       Examples:

       * You can use YUV files as input:

               ffmpeg -i /tmp/test%d.Y /tmp/out.mpg

       It will use the files:

               /tmp/test0.Y, /tmp/test0.U, /tmp/test0.V,
               /tmp/test1.Y, /tmp/test1.U, /tmp/test1.V, etc...

       The Y files use twice the resolution of the U and V files. They are raw
       files, without header. They can be generated by all decent video
       decoders. You must specify the size of the image with the -s option if
       FFmpeg cannot guess it.

       * You can input from a raw YUV420P file:

               ffmpeg -i /tmp/test.yuv /tmp/out.avi

       test.yuv is a file containing raw YUV planar data. Each frame is com-
       posed of the Y plane followed by the U and V planes at half vertical
       and horizontal resolution.

       * You can output to a raw YUV420P file:

               ffmpeg -i mydivx.avi hugefile.yuv

       * You can set several input files and output files:

               ffmpeg -i /tmp/a.wav -s 640x480 -i /tmp/a.yuv /tmp/a.mpg

       Converts the audio file a.wav and the raw YUV video file a.yuv to MPEG
       file a.mpg.

       * You can also do audio and video conversions at the same time:

               ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2

       Converts a.wav to MPEG audio at 22050Hz sample rate.

       * You can encode to several formats at the same time and define a map-
       ping from input stream to output streams:

               ffmpeg -i /tmp/a.wav -ab 64 /tmp/a.mp2 -ab 128 /tmp/b.mp2 -map 0:0 -map 0:0

       Converts a.wav to a.mp2 at 64 kbits and to b.mp2 at 128 kbits. '-map
       file:index' specifies which input stream is used for each output
       stream, in the order of the definition of output streams.

       * You can transcode decrypted VOBs

               ffmpeg -i snatch_1.vob -f avi -vcodec mpeg4 -b 800 -g 300 -bf 2 -acodec mp3 -ab 128 snatch.avi

       This is a typical DVD ripping example; the input is a VOB file, the
       output an AVI file with MPEG-4 video and MP3 audio. Note that in this
       command we use B-frames so the MPEG-4 stream is DivX5 compatible, and
       GOP size is 300 which means one intra frame every 10 seconds for
       29.97fps input video. Furthermore, the audio stream is MP3-encoded so
       you need to enable LAME support by passing "--enable-mp3lame" to con-
       figure.  The mapping is particularly useful for DVD transcoding to get
       the desired audio language.

       NOTE: To see the supported input formats, use "ffmpeg -formats".

SEE ALSO
       ffserver(1), ffplay(1) and the HTML documentation of ffmpeg.

AUTHOR
       Fabrice Bellard

                                  2009-04-26                         FFMPEG(1)

抱歉!评论已关闭.