Forum archive - Useful FFmpeg Syntax Examples

http://www.supermediastore.com/



Forum Archive Home -> Video Conversion -> Useful FFmpeg Syntax Examples



Useful FFmpeg Syntax Examples

Soopafresh posted 2007 Oct 14 14:47
Lots of good stuff I haven't seen documented elsewhere. Scroll down to see it all:

http://www.itbroadcastanddigitalcinema.com/ffmpeg_howto.html#Generic_Syntax



Baldrick posted 2007 Oct 14 14:51
I'm posting it here also if the source would disappear.
:


FFmpeg Howto


Table of Contents

    * Generic Syntax

    * Main Options

    * Encoding :
          o D10 (aka Sony IMX)
          o DVCAM / DVCPRO25 / DVCPRO50
          o VC-3 (aka Avid DNxHD)
          o FFV1
          o H.264 I-frame only in Highest Quality
          o H.264 Long GOP
          o MPEG-2 I-frame only in Highest Quality
          o MPEG-2 Long GOP

    * Muxing and Wrapping :
          o D10 into QuickTime ( for Final Cut Pro import )
          o MPEG-2 Program Stream

    * Demuxing and Unwrapping :
          o MPEG-2 Program Stream

    * Timecode Management :
          o MPEG-2 Start Timecode

    * Misc :
          o Audio Volume Modification
          o Input Stream Selection
          o Sub-clip Creation
          o Make a Video File from a Single Frame


Generic Syntax

ffmpeg [[infile options][`-i' infile]]... {[outfile options] outfile}...

Note : As a general rule, options are applied to the next specified file. Therefore, order is important and you can have the same option on the command line multiple times. Each occurrence is then applied to the next input or output file.



Main Options

-ab <int> : Set audio bitrate in bit/s ( default = 64k ).

-acodec <string> : Force audio codec.
    aac : AAC-LC
    ac3 : AC3 ( Dolby Digital )
    copy : Copy raw codec data as is.
    mp2 : MPEG Audio Layer II
    mp3 : MPEG Audio Layer III
    pcm_s16le : Uncompressed 16-bit PCM Audio

-an : Disable audio.

-ar <int> : Set audio sampling frequency in Hz ( default = 44100 Hz ).

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

-async <int> : Audio sync method. Audio will be stretched or squeezed 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.

-b <int> : Set video bitrate in bit/s ( default = 200k ).

-bf <int> : Set number of B-frames ( supported for MPEG-1, MPEG-2 and MPEG-4 ).

-b_strategy <boolean> : Strategy to choose between I/P/B-frames ( 0 = off / 1 = on ).

-bufsize <int> : Set rate control buffer size ( in bits ).

-cmp <string or int> : Full pel motion estimation compare function.
    sad ( 0 ) : Sum of absolute differences, fast ( default ).
    sse ( 1 ) : Sum of squared errors.
    satd ( 2 ) : Sum of absolute Hadamard transformed differences.
    dct ( 3 ) : Sum of absolute DCT transformed differences.
    psnr ( 4 ) : Sum of squared quantization errors ( avoid, low quality ).
    bit ( 5 ) : Number of bits needed for the block.
    rd ( 6 ) : Rate distortion optimal, slow.
    zero ( 7 ) : 0.
    vsad ( 8 ) : Sum of absolute vertical differences.
    vsse ( 9 ) : Sum of squared vertical differences.
    nsse ( 10 ) : Noise preserving sum of squared differences.
    w53 ( 11 ) : 5/3 wavelet ( only used in Snow ).
    w97 ( 12 ) : 9/7 wavelet ( only used in Snow ).
    dctmax ( 13 )
    chroma ( 14 )

-coder <string or int> :
    vlc ( 0 ) : Variable length coder / huffman coder.
    ac ( 1 ) : Arithmetic coder.
    raw ( 2 ) : Raw ( no encoding ).
    rle ( 3 ) : Run-length coder.
    deflate ( 4 ) : Deflate-based coder.

-cropbottom <int> : Set bottom crop band size ( in pixels ).

-cropleft <int> : Set left crop band size ( in pixels ).

-cropright <int> : Set right crop band size ( in pixels ).

-croptop <int> : Set top crop band size ( in pixels ).

-deinterlace : Deinterlace pictures.

-dc <int> : Intra DC precision.

-f <string> : Force file format.
    ac3 : Raw AC3
    avi : AVI
    dv : DV
    gxf : GXF ( General eXchange Format )
    h264 : Raw H.264
    m2v : MPEG-2 Video Elemetary Stream
    m4v : MPEG-4 Video Elemetary Stream
    mov : QuickTime
    mp2 : MPEG Audio Layer II
    mp3 : MPEG Audio Layer III
    mp4 : MP4
    mpeg : MPEG-1 System Stream
    mpegts : MPEG-2 Transport Stream
    rawvideo : RAW Video
    vob : MPEG-2 Program Stream
    wav : WAV

-flags <string> :
    aic : H.263 advanced intra coding / MPEG-4 ac prediction.
    aiv : H.263 alternative inter VLC.
    alt : Enable alternate scantable ( MPEG-2/MPEG-4 ).
    bitexact : Use only bitexact stuff ( except (i)dct ).
    cbp : Use rate distortion optimization for cbp.
    cgop : Closed GOP.
    gmc : Use global motion compensation.
    gray : Only decode/encode grayscale.
    ildct : Use interlaced DCT.
    ilme : Interlaced motion estimation.
    loop : Use loop filter.
    low_delay : Force low delay.
    mv0 : Always try a mb with mv=<0,0>.
    mv4 : Use four motion vector by macroblock ( MPEG-4 ).
    naq : Normalize adaptive quantization.
    obmc : Use overlapped block motion compensation ( H.263+ ).
    part : Use data partitioning.
    psnr : Error variables will be set during encoding.
    qpel : Use 1/4 pel motion compensation.
    qprd : Use rate distortion optimization for qp selection.
    scan_offset : Will reserve space for svcd scan offset user data.
    slice
    trell : Use trellis quantization.
    umv : Use unlimited motion vectors.

-flags2 <string> :
    aud : Access unit delimiters ( H.264 ).
    bpyramid : Allows B-frames to be used as references for predicting.
    brdo : B-frame rate-distortion optimization.
    dct8x8 : High profile 8x8 transform ( H.264 ).
    drop_frame_timecode
    fast : Allow non spec compliant speedup tricks.
    fastpskip : Fast pskip ( H.264 ).
    ivlc : Intra VLC table.
    local_header : Place global headers at every keyframe instead of in extradata.
    mixed_refs : One reference per partition, as opposed to one reference per macroblock.
    non_linear_q : Use non linear quantizer.
    noout : Skip bitstream encoding.
    sgop : Strictly enforce GOP size.
    skiprd : RD optimal macroblock level residual skipping.
    wpred : Weighted biprediction for B-frames ( H.264 ).

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

-g <int> : Set the group of pictures ( GOP ) size.

-genpts <boolean> : Generate PTS ( 0 = off / 1 = on ).

-h : Show help.

-i <string> : Input file name.

-intra : Use only intra frames ( I-frames ).

-loop_input : Loop ( only works with still images ).

-map <file:stream>[:syncfile:syncstream] : Set input stream mapping.

-maxrate <int> : Set maximum video bitrate tolerance ( in bit/s ).

-me <string or int> : Set motion estimation method.
    dia ( 1 ) : Diamond search, radius 1 ( fast ).
    hex ( 2 ) : Hexagonal search, radius 2 ( default ).
    umh ( 3 ) : Uneven multi-hexagon search.
    esa ( 4 ) : Exhaustive search ( slow ).

-mbd <string> : Macroblock decision algorithm ( high quality mode ).
    simple : Use mbcmp ( default ).
    bits : Use fewest bits.
    rd : Use best rate distortion.

-minrate <int> : Set minimum video bitrate tolerance ( in bit/s ).

-padbottom <int> : Set bottom pad band size ( in pixels ).

-padcolor <int> : Set color of pad bands ( Hex 000000 to FFFFFF ).

-padleft <int> : Set left pad band size ( in pixels ).

-padright <int> : Set right pad band size ( in pixels ).

-padtop <int> : Set top pad band size ( in pixels ).

-pass <int> : Select the pass number ( 1 or 2 ). 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.

-pix_fmt <string> : Set pixel format.
    yuv420p
    yuv422p
    yuv444p
    yuv422
    yuv410p
    yuv411p
    yuvj420p
    yuvj422p
    yuvj444p
    rgb24
    bgr24
    rgba32
    rgb565
    rgb555
    gray
    monow
    monob
    pal8

-ps <int> : Set packet size in bits.

-qmax <int> : Maximum video quantizer scale ( VBR ).

-qmin <int> : Minimum video quantizer scale ( VBR ).

-r <int or string> : Set frame rate ( Hz value, fraction or abbreviation ). For example : 25, 30000/1001, etc.

-rc_init_occupancy <int> : Number of bits which should be loaded into the rate control buffer before decoding starts.

-s <string> : Set frame size ( WidthxHeight or abreviation ).

-subcmp <string or int> : Sub pel motion estimation compare function.
    sad ( 0 ) : Sum of absolute differences, fast ( default ).
    sse ( 1 ) : Sum of squared errors.
    satd ( 2 ) : Sum of absolute Hadamard transformed differences.
    dct ( 3 ) : Sum of absolute DCT transformed differences.
    psnr ( 4 ) : Sum of squared quantization errors ( avoid, low quality ).
    bit ( 5 ) : Number of bits needed for the block.
    rd ( 6 ) : Rate distortion optimal, slow.
    zero ( 7 ) : 0.
    vsad ( 8 ) : Sum of absolute vertical differences.
    vsse ( 9 ) : Sum of squared vertical differences.
    nsse ( 10 ) : Noise preserving sum of squared differences.
    w53 ( 11 ) : 5/3 wavelet ( only used in Snow ).
    w97 ( 12 ) : 9/7 wavelet ( only used in Snow ).
    dctmax ( 13 )
    chroma ( 14 )

-ss <timecode> : Set start time offset in seconds or hh:mm:ss[.xxx] format.

-t <timecode> : Set recording time in seconds or hh:mm:ss[.xxx] format.

-timecode_frame_start <int> : Set GOP start timecode value in number of frames ( ex: 1282748 for 14:15:09:23 ). Drop Frame mode is not supported.

-top <int> : Field dominance ( top = 1 / bottom = 0 / auto = -1 ).

-trellis <int> : Rate-distortion optimal quantization.

-vbsf <string> : Bitstream filters.
    dump_extra
    imxdump
    noise
    remove_extra

-vcodec <string> : Force video codec.
    copy : Copy raw codec data as is.
    dvvideo : DV Video
    ffv1 : FFV1 lossless video codec
    h264 : H.264
    mpeg2video : MPEG-2 Video
    rawvideo : RAW Video
    xvid : XviD ( MPEG-4 Part 2 )

-version : Show version.

-vframes <int> : Set the number of video frames to record.

-vn : Disable video.

-vol <int> : Modify audio volume ( 256=normal ).

-vsync <int> : Video sync method. Video will be stretched or squeezed to match the timestamps, it is done by duplicating and dropping frames. With -map option, 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.

-vtag <string> : Force video FourCC/Tag.

-y : Overwrite output files.



D10 (aka Sony IMX) Encoding

ffmpeg -async 1 -i <input_file> -vcodec mpeg2video -r 25 -pix_fmt yuv422p -minrate 50000k -maxrate 50000k -b 50000k -intra -flags +ildct+low_delay -dc 10 -flags2 +ivlc+non_linear_q -ps 1 -qmin 1 -qmax 3 -top 1 -bufsize 2000000 -rc_init_occupancy 2000000 -rc_buf_aggressivity 0.25 -an output.m2v

Notes :
- Only works for 25 fps content.
- Change minrate, maxrate and b values to 30000k / 40000k / 50000k in order to produce 30/40/50 Mbps D10 essence.
- Set bufsize and rc_init_occupancy values to 1200000 / 1600000 / 2000000 for 30/40/50 Mbps D10 essence.
- Add the -padtop 32 option if you want to produce a 720x608 D10 image size from a 720x576 source.



DVCAM / DVCPRO25 / DVCPRO50 Encoding

ffmpeg -i <input_file> -pix_fmt yuv420p output_DVCAM.dv
ffmpeg -i <input_file> -pix_fmt yuv411p output_DVCPRO25.dv
ffmpeg -i <input_file> -pix_fmt yuv422p output_DVCPRO50.dv



VC-3 (aka Avid DNxHD) Encoding

ffmpeg -i <input_file> -vcodec dnxhd -b <bitrate> -an output.mov

Notes :
- <bitrate> can take the following values : 36Mb, 120Mb, 185Mb ( please refer to the following table ).
- Add the following option for interlaced modes : -flags +ildct
- Add the following option for best quality mode ( very slow ! ) : -mbd rd

Supported Resolutions :

Project Format    Resolution    Frame Size    Bits    FPS    <bitrate>
1080i / 59.94    DNxHD 220    1920 x 1080    8    29.97    185Mb
1080i / 59.94    DNxHD 145    1920 x 1080    8    29.97    120Mb
1080i / 50    DNxHD 185    1920 x 1080    8    25    185Mb
1080i / 50    DNxHD 120    1920 x 1080    8    25    120Mb
1080p / 25    DNxHD 185    1920 x 1080    8    25    185Mb
1080p / 25    DNxHD 120    1920 x 1080    8    25    120Mb
1080p / 25    DNxHD 36    1920 x 1080    8    25    36Mb
1080p / 24    DNxHD 175    1920 x 1080    8    24    185Mb
1080p / 24    DNxHD 115    1920 x 1080    8    24    120Mb
1080p / 24    DNxHD 36    1920 x 1080    8    24    36Mb
1080p / 23.976    DNxHD 175    1920 x 1080    8    23.976    185Mb
1080p / 23.976    DNxHD 115    1920 x 1080    8    23.976    120Mb
1080p / 23.976    DNxHD 36    1920 x 1080    8    23.976    36Mb
1080p / 29.7    DNxHD 45    1920 x 1080    8    29.97    36Mb




FFV1 Encoding

ffmpeg -i <input_file> -vcodec ffv1 -an output.mov



H.264 I-frame only Highest Quality Encoding

ffmpeg -i <input_file> -vcodec h264 -cqp 1 -intra -coder ac -an output.mp4



H.264 Long GOP Encoding

ffmpeg -i <input_file> -vcodec h264 -b <video_bitrate> -g <gop_size> -bf 2 -b_strategy 1 -flags +loop -coder 1 -subcmp 2 -cmp 2 -trellis 2 -me hex -acodec aac -ab <audio_bitrate> output.mp4



MPEG-2 I-frame only Highest Quality Encoding

ffmpeg -i <input_file> -vcodec mpeg2video -qscale 1 -qmin 1 -intra -an output.m2v



MPEG-2 Long GOP Encoding

ffmpeg -i <input_file> -vcodec mpeg2video -b <video_bitrate> -g <gop_size> -bf 2 -b_strategy 1 -acodec mp2 -ab <audio_bitrate> -f vob output.mpg



D10 into QuickTime Wrapping

ffmpeg -i <input_file> -vcodec copy -acodec pcm_s16le -vtag mx5p -vbsf imxdump output.mov

Notes :
- This feature needs a patched version of FFmpeg not available in the current SVN, please contact Baptiste Coudurier or Olivier Amato for more information.
- Set -vtag to mx3p / mx4p / m5xp for D10 30/40/50 PAL or mx3n / mx4n / m5xn for D10 30/40/50 NTSC.
- Input D10 image size must be 720x608 ( use -padtop 32 option during D10 encoding if the original image size is 720x576 ).
- Final Cut Pro compliant.



MPEG-2 Program Stream Muxing

ffmpeg -genpts 1 -i ES_Video.m2v -i ES_Audio.mp2 -vcodec copy -acodec copy -f vob output.mpg



MPEG-2 Program Stream Demuxing

ffmpeg -i input.mpg -vcodec copy -f mpeg2video ES_Video.m2v -acodec copy -f mp2 ES_Audio.mp2

Note : This also works for files containing multiple audio tracks :
ffmpeg -i input.mpg -vcodec copy -f mpeg2video ES_Video.m2v -acodec copy -f mp2 ES_Audio1.mp2 -acodec copy -f mp2 ES_Audio2.mp2



MPEG-2 Start Timecode

ffmpeg -i <input_file> -timecode_frame_start <start_timecode> -vcodec mpeg2video -an output.m2v

Note : Start timecode is set as number of frames. For instance, if you want to start at 18:12:36:15, you will have to set -timecode_frame_start to 1638915 ( for 25 fps content ).



Audio Volume Modification

ffmpeg -i <input_file> -vol <audio_volume> -acodec <audio_codec> <output_file>



Input Stream Selection

ffmpeg -i input.vob -map 0:2 -acodec aac -ab <audio_bitrate> -vn output.mp4

Transcode audio stream #0:2.



Sub-clip Creation

ffmpeg -i <input_file> -ss <timecode> -t <timecode> -vcodec copy -acodec copy <output_file>



Make a Video File from a Single Frame

ffmpeg -loop_input -vframes <number_of_frames> -i <input_file> <output_file>



Please submit new command lines to Olivier Amato

http://www.itbroadcastanddigitalcinema.com/ffmpeg_howto.html#Generic_Syntax



Chris K posted 2007 Oct 14 22:04
Soopafresh :
Lots of good stuff I haven't seen documented elsewhere. Scroll down to see it all:

http://www.itbroadcastanddigitalcinema.com/ffmpeg_howto.html#Generic_Syntax

Hi Soopafresh,

Thanks! This are the most extensive descriptions I've seen so far. As you know FFmpeg info is scarce.

Tried a few of the examples and was amazed MPEG-2 muxing worked. Up to now I considered FFmpeg unusable for muxing. Always had out of sync audio. It's simply the "1" after -copyts and the position where to put it, but you have to know it first.

Also thanks to Baldrick for preserving this valuable information for the future.

Chris.



Soopafresh posted 2007 Oct 15 01:09
Tried a few of the examples and was amazed MPEG-2 muxing worked. Up to now I considered FFmpeg unusable for muxing. Always had out of sync audio. It's simply the "1" after -copyts and the position where to put it, but you have to know it first.

Me too. When I read the muxing syntax I thought - "that actually works?". Also found some ffmpeg scripts from

http://eugenia.gnomefiles.org/2007/08/11/from-dvhdvavchd-to-ps3xbox360appletv/

Thanks to Eugenia Loli-Queru. http://osnews.com/img/vegas/ffmpeg-templates.zip They cover some rarer formats (h264 encoding) that ffmpeg supports as well, although I found they work best with celtic_druid's 8000 series builds from 2007.



Chris K posted 2007 Oct 15 03:12
Hi Soopafresh,

Soopafresh :
Thanks to Eugenia Loli-Queru. http://osnews.com/img/vegas/ffmpeg-templates.zip They cover some rarer formats (h264 encoding) that ffmpeg supports as well, although I found they work best with celtic_druid's 8000 series builds from 2007.

I attached a template adaption for Avanti from the IPHONE example. It's x264 in mp4 and it's 16:9.
Please can you give me your opinion? I think I like "Eugenia Loli-Queru".

Chris.

avanti_iphone_templates.7z



halsboss posted 2007 Oct 19 08:28
Hmm, maybe the options are a bit out of date - the latest ffmpeg builds from http://ffdshow.faireal.net/mirror/ffmpeg/ have some different renamed options
Refer
http://forum.doom9.org/showthread.php?t=130587
eg
-acodec libmp3lame
-vcodec libx264
etc

I can't find a complete list for the new builds, so... where to from here ?



45tripp posted 2007 Oct 19 19:00
:
ffmpeg -formats



halsboss posted 2007 Oct 19 19:26
45tripp :
:
ffmpeg -formats

Yes, that showed the new versions replacement codes up under "codecs" alright (D=decode, E=encode ?) for the latest ffmpeg version from http://ffdshow.faireal.net/mirror/ffmpeg/

Thanks 45tripp.

Also, a prompter for upgraders, the newer versions of ffmpeg have also changed the bitrate setting terminology eg from "9400" to "9400k" ... and the newer "MP2" may possibly have some "playback choppiness" issue, try for yourself.

:

C:\SOFTWARE\ffmpeg>ffmpeg -formats
FFmpeg version SVN-r10464, Copyright (c) 2000-2007 Fabrice Bellard, et al.
configuration: --enable-gpl --enable-pp --enable-swscaler --enable-pthreads --enable-liba52 --enable-avisynth --enable-libamr-nb --enable-libamr-wb
--enable-libfaac --enable-libfaad --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libogg --enable-libtheora --enable-libvorbis --enable-l
ibx264 --enable-libxvid --cpu=i686 --enable-memalign-hack --extra-ldflags=-static
libavutil version: 49.5.0
libavcodec version: 51.43.0
libavformat version: 51.12.2
built on Sep 10 2007 10:31:22, gcc: 4.2.1
File formats:
E 3g2 3gp2 format
E 3gp 3gp format
D 4xm 4X Technologies format
D MTV MTV format
DE RoQ Id RoQ format
D aac ADTS AAC
DE ac3 raw ac3
E adts ADTS AAC
DE aiff Audio IFF
DE alaw pcm A law format
DE amr 3gpp amr file format
D apc CRYO APC format
DE asf asf format
E asf_stream asf format
DE au SUN AU Format
DE avi avi format
D avs AVISynth
D bethsoftvid Bethesda Softworks 'Daggerfall' VID format
D c93 Interplay C93
E crc crc testing format
D daud D-Cinema audio format
D dsicin Delphine Software International CIN format
D dts raw dts
DE dv DV video format
E dvd MPEG2 PS format (DVD VOB)
D dxa dxa
D ea Electronic Arts Multimedia Format
DE ffm ffm format
D film_cpk Sega FILM/CPK format
DE flac raw flac
D flic FLI/FLC/FLX animation format
DE flv flv format
E framecrc framecrc testing format
DE gif GIF Animation
DE gxf GXF format
DE h261 raw h261
DE h263 raw h263
DE h264 raw H264 video format
D idcin Id CIN format
DE image2 image2 sequence
DE image2pipe piped image2 sequence
D ingenient Ingenient MJPEG
D ipmovie Interplay MVE format
DE m4v raw MPEG4 video format
DE matroska Matroska File Format
DE mjpeg MJPEG video
D mm American Laser Games MM format
DE mmf mmf format
E mov mov format
D mov,mp4,m4a,3gp,3g2,mj2 QuickTime/MPEG4/Motion JPEG 2000 format
E mp2 MPEG audio layer 2
DE mp3 MPEG audio layer 3
E mp4 mp4 format
D mpc musepack
DE mpeg MPEG1 System format
E mpeg1video MPEG video
E mpeg2video MPEG2 video
DE mpegts MPEG2 transport stream format
D mpegtsraw MPEG2 raw transport stream format
D mpegvideo MPEG video
E mpjpeg Mime multipart JPEG format
DE mulaw pcm mu law format
D mxf MXF format
D nsv NullSoft Video format
E null null video format
DE nut nut format
D nuv NuppelVideo format
DE ogg Ogg format
E psp psp mp4 format
D psxstr Sony Playstation STR format
DE rawvideo raw video format
D redir Redirector format
DE rm rm format
E rtp RTP output format
D rtsp RTSP input format
DE s16be pcm signed 16 bit big endian format
DE s16le pcm signed 16 bit little endian format
DE s8 pcm signed 8 bit format
D sdp SDP
D shn raw shorten
D smk Smacker Video
D sol Sierra SOL Format
E svcd MPEG2 PS format (VOB)
DE swf Flash format
D thp THP
D tiertexseq Tiertex Limited SEQ format
D tta true-audio
D txd txd format
DE u16be pcm unsigned 16 bit big endian format
DE u16le pcm unsigned 16 bit little endian format
DE u8 pcm unsigned 8 bit format
D vc1 raw vc1
E vcd MPEG1 System format (VCD)
D vmd Sierra VMD format
E vob MPEG2 PS format (VOB)
DE voc Creative Voice File format
DE wav wav format
D wc3movie Wing Commander III movie format
D wsaud Westwood Studios audio format
D wsvqa Westwood Studios VQA format
D wv WavPack
DE yuv4mpegpipe YUV4MPEG pipe format

Codecs:
D V 4xm
D V D 8bps
D V VMware video
D V D aasc
EA ac3
DEA adpcm_4xm
DEA adpcm_adx
DEA adpcm_ct
DEA adpcm_ea
DEA adpcm_ima_dk3
DEA adpcm_ima_dk4
DEA adpcm_ima_qt
DEA adpcm_ima_smjpeg
DEA adpcm_ima_wav
DEA adpcm_ima_ws
DEA adpcm_ms
DEA adpcm_sbpro_2
DEA adpcm_sbpro_3
DEA adpcm_sbpro_4
DEA adpcm_swf
D A adpcm_thp
DEA adpcm_xa
DEA adpcm_yamaha
D A alac
DEV D asv1
DEV D asv2
D A atrac 3
D V D avs
D V bethsoftvid
DEV bmp
D V D c93
D V D camstudio
D V D camtasia
D V D cavs
D V D cinepak
D V D cljr
D A cook
D V D cyuv
D A dca
D V D dnxhd
D A dsicinaudio
D V D dsicinvideo
DES dvbsub
DES dvdsub
DEV D dvvideo
D V dxa
DEV D ffv1
DEVSD ffvhuff
DEA flac
DEV D flashsv
D V D flic
DEVSD flv
D V D fraps
DEA g726
DEV gif
DEV D h261
DEVSDT h263
D VSD h263i
EV h263p
D V DT h264
DEVSD huffyuv
D V D idcinvideo
D A imc
D V D indeo2
D V indeo3
D A interplay_dpcm
D V D interplayvideo
DEV D jpegls
D V kmvc
D A liba52
DEA libamr_nb
DEA libamr_wb
EA libfaac
D A libfaad
DEA libgsm
DEA libgsm_ms
EA libmp3lame
EV libtheora
EV libx264
EV libxvid
EV ljpeg
D V D loco
D A mace3
D A mace6
D V D mdec
DEV D mjpeg
D V D mjpegb
D V D mmvideo
DEA mp2
D A mp3
D A mp3adu
D A mp3on4
D A mpc sv7
DEVSDT mpeg1video
DEVSDT mpeg2video
DEVSDT mpeg4
D A mpeg4aac
D VSDT mpegvideo
DEVSD msmpeg4
DEVSD msmpeg4v1
DEVSD msmpeg4v2
D V D msrle
D V D msvideo1
D V D mszh
D V D nuv
DEV pam
DEV pbm
DEA pcm_alaw
DEA pcm_mulaw
DEA pcm_s16be
DEA pcm_s16le
DEA pcm_s24be
DEA pcm_s24daud
DEA pcm_s24le
DEA pcm_s32be
DEA pcm_s32le
DEA pcm_s8
DEA pcm_u16be
DEA pcm_u16le
DEA pcm_u24be
DEA pcm_u24le
DEA pcm_u32be
DEA pcm_u32le
DEA pcm_u8
DEA pcm_zork
DEV pgm
DEV pgmyuv
DEV png
DEV ppm
D V ptx
D A qdm2
D V D qdraw
D V D qpeg
DEV D qtrle
DEV rawvideo
D A real_144
D A real_288
DEA roq_dpcm
DEV D roqvideo
D V D rpza
DEV D rv10
DEV D rv20
DEV sgi
D A shorten
D A smackaud
D V smackvid
D V D smc
DEV snow
D A sol_dpcm
DEA sonic
EA sonicls
D V D sp5x
DEV D svq1
D VSD svq3
DEV targa
D V theora
D V D thp
D V D tiertexseqvideo
DEV tiff
D V D truemotion1
D V D truemotion2
D A truespeech
D A tta
D V txd
D V D ultimotion
D V vc1
D V D vcr1
D A vmdaudio
D V D vmdvideo
DEA vorbis
D V vp3
D V D vp5
D V D vp6
D V D vp6f
D V D vqavideo
D A wavpack
DEA wmav1
DEA wmav2
DEVSD wmv1
DEVSD wmv2
D V wmv3
D V D wnv1
D A ws_snd1
D A xan_dpcm
D V D xan_wc3
D V D xl
D S xsub
DEV D zlib
DEV zmbv

Supported file protocols:
file: http: pipe: rtp: tcp: udp:
Frame size, frame rate abbreviations:
ntsc pal qntsc qpal sntsc spal film ntsc-film sqcif qcif cif 4cif

Note, the names of encoders and decoders do not always match, so there are
several cases where the above table shows encoder only or decoder only entries
even though both encoding and decoding are supported. For example, the h263
decoder corresponds to the h263 and h263p encoders, for file formats it is even
worse.


Now, if only there was a way to list the abbreviations for presets, like "pal-dvd", in a commandline like this, which converts an extracted PAL HDTV interlaced 1080i video stream into a DVD-compatible PAL SD interlaced 576i video stream ready for DVD authoring...
:

"C:\SOFTWARE\ffmpeg\ffmpeg.exe" -y -i inputfile.mpv -target pal-dvd -ilme -ildct -flags +ildct+ilme -top 1 -sameq -maxrate 9400k -dc 10 -s 720x576 -aspect 16:9 -an outputfile.mpv



halsboss posted 2007 Oct 19 20:20
Related links -

"resize PAL 1080i to PAL DVD 576i or 576p ?" http://forum.doom9.org/showthread.php?p=1046975#post1046975

"ffmpeg problems ?" http://forum.doom9.org/showthread.php?p=1056919#post1056919



halsboss posted 2008 Apr 03 04:45
Be careful. The ffmpeg user mailing list confirms what I subsequently found out by testing and examining the bitrate in a btrate viewer... ffmpeg produces s bitrate spikes in the resulting output file which go outside the DVD spec.

Back to the ever-trusty HC !




Login/Register to our forum to be able to post here.








DVDFab DVD to DVD lets you backup DVDs to DVDr, AVI or MP4 for portable devices. More info or download trial!
About   Advertise   Forum   Forum Archive   RSS Feeds   Statistics   Tools