[Home]Transcode Command Line Options

Showing revision 63
Transcode accepts a lot of commandline options, which are passed on to the various tc* binaries while doing its work.
(check the man pages of the other tc* binaries if an option's explanation isn't clearly described here)

Default values are shown between square brackets and in [green].

Command line in principle

This is a basic command line for most uses
 transcode -i sourcevideo \
           -p sourceaudio \
           -o destvideo   \               
           -x vmod[,amod] \
           -y vmod[,amod] \           
           -J filter ...
The -i option specifies the filename of the source video.
The -p option comes in handy if the video file contains no audio stream, or if you prefer to use a separate audiofile.
The -o option sets the name of the output file. If omitted, transcode will encode to '/dev/null'.
The -x option sets the video[,audio] import modules. If omitted, transcode will probe for appropriate import modules.
The -y option sets the video[,audio] export modules. If omitted, transcode will ignore the -o option and encode to '/dev/null'.
The -J option is for filter plugins.

The order you use to specify the options is not important.
( also available: the man page for transcode)

Input

  -i name
     input file|directory|device|mountpoint which can be
     an .avi, .mkv, .ogm, .vob, .mpg, a dvd device...
     nearly any type of video/audio container, device or
     file type.

  -H n (0=off) [1]
     auto-probe n MB of source file specified using the
     -i option. Setting to '0' will prevent the auto-probe
     from overriding geometry specified by the -g option,
     for example.
     if you use -H 0 you will need to set
     --export_fps and --export_asr and
     -e manually since they will otherwise use the
     defaults, which may not be correct.

  -p file [off]
     input seperate audio file (overriding the audio
     stream, if any, in the file specified by the
     -i option.

  -x vmod[,amod] [null]
     video[,audio] import modules.
     -x mplayer,mplayer will, for example, use
     mplayer as the input filter, which can handle
     nearly any audio/video format in existence.
     all mplayer commandline options are supported,
     making it possible to hardsub dumped vobsub
     .sub and .idx files into the video stream:
     -x mplayer="-vobsub $filename -vobsubid 0",null
     note that the filename should be the base filename
     exclusive of the extension.

  -a a[,v] [0,0]
     extract audio[,video] track N,N. 

  --dvd_access_delay N [3]
     delay DVD access by N seconds. Used to synchronize
     import from DVD or vncrec ("simple VNC session
     recorder and player") . Mainly vncrec needs some
     seconds to start up and this is the option to delay
     transcode.

Audio

  -e r[,b[,c]] [48000,16,2]
     PCM audio input stream parameters. Sometimes it
     is necessary to set this explicitly for output
     audio and video to be synchronized correctly.

  -E r[,b[,c]] [as input]
     audio output samplerate, bits, channels.

  -n 0xnn [0x2000]
     import audio format id.
       0x2000 is the hex-value for the 'AC3' codec.
       0x55 is the hex value for the 'mp3 (MPEG Layer 3)' codec.
       0x1 is the hex value for the 'PCM Wav' codec.

  -N 0xnn [0x55]
     export audio format id.
       0x2000 is the hex-value for the 'AC3' codec.
       0x55 is the hex value for the 'mp3 (MPEG Layer 3)' codec.
       0x1 is the hex value for the 'PCM Wav' codec.

  -b b[,v[,q[,m]]] [128,0,5,0]
     audio encoder bitrate kBits/s[,vbr[,quality[,mode]]] explain

  --no_audio_adjust [off]
     disable audio frame sample adjustment explain

  --no_bitreservoir [off]
    disable lame bitreservoir. why?
    This makes cutting of streams easier because the
    frames have no back references so all frames are
    independent from previous ones.
    (The bitreservoir allows a frame to use not used
    bits in the previous frame)

  --lame_preset name[,fast] [off]
    use lame preset with name.

Video

  -g WxH [720x576]
    RGB video stream frame size.

  --import_asr C [autodetect]
    set import display aspect ratio code, where C can be:
      1 for 1:1 aspect ratio.
      2 for 4:3 aspect ratio.
      3 for 16:9 aspect ratio.
      4 for 2.21:1 aspect ratio.
    if C is not specified, transcode will attempt to autodetect the input aspect ratio.

  --export_asr C [as input]
    set export display aspect ratio code, where C can be:
      1 for 1:1 aspect ratio.
      2 for 4:3 aspect ratio.
      3 for 16:9 aspect ratio.
      4 for 2.21:1 aspect ratio.
    if C is not specified, transcode will attempt to autodetect and keep the input aspect ratio.

  --export_par N,D [autodetect]
    set export pixel aspect ratio.
    I think this is the ratio of the input/output display aspect ratios.

  --keep_asr [off]
    try to keep aspect ratio (only with -Z)

  -f rate[,frc] [25.000,0]
    input video frame rate in fps. If frc (frame rate code, values [0..15]) is 
    specified, transcode will calculate the precise frames per second internally. 

  --export_fps f[,c] [as input]
    output video frame rate[,code].

  --export_frc F [as input]
    set export frame rate code F.

  --hard_fps [off]
    disable smooth dropping (for variable fps clips)

Output

  -o file
    output file name base

  -m file [off]
    write audio stream to separate file.

  -y vmod[,amod] [null]
    video[,audio] export modules.

  -F codec [module dependent]
    encoder parameter strings.
    the optional parameters to the encoders can be rather occult.

  --avi_limit N [2048]
    split output AVI file after N MB.

  --avi_comments F [off]
    Read AVI header comments from file F (see transcode(1))

Audio effects

  -d [off]
    swap bytes in audio stream.

  -s g[,c[,f[,r]]] [off,1,1,1]
    increase volume by gain,[center,front,rear]

Processing

  -u m[,n] [10,1]
    use m framebuffer[,n threads] for AV processing
    should n threads be == to number of cpu's?

  -A [off]
    use AC3 as internal audio codec. what does this mean?

  -V [deprecated]
    use YV12/I420/YUV420 as internal video format.
    this is now the default.

  --use_rgb [off]
    use RGB as internal video format.
    when is this appropriate?

  --uyvy [off]
    use UYVY/YUV422 as internal video format.

  -J f1[,f2[,...]] [off]
    apply external filter plugins

  -P flag [0]
    pass-through flag (0=off|1=V|2=A|3=A+V)
    turns off decoding and encoding of audio and/or video stream

A/V offset

  -D num [0]
    sync video start with audio frame num.

  --av_fine_ms t [autodetect]
    AV fine-tuning shift t in millisecs.

Sync modes

  -M mode [1]
    demuxer PES AV sync mode (0=off|1=PTS only|2=full)

  -O [off]
    flush lame mp3 buffer on encoder stop

Resizing

  -r n[,m] [off]
    reduce video height/width by n[,m]

  -B n[,m[,M]] [off,32]
    resize to height-n*M rows [,width-m*M] columns

  -X n[,m[,M]] [off,32]
    resize to height+n*M rows [,width+m*M] columns

  -Z WxH[,fast] [off,notfast]
    resize to w columns, h rows with filtering
    .
    if you notice moire effects when using "fast", disable the ",fast" option
    and add the option "--zoom_filter Mitchell". moire effects will manifest as
    faint vertical bars throughout the image.

  --zoom_filter str [Lanczos3]
    use filter string for video resampling -Z
    .
    the Mitchell resampling filter is a good choice when Lanczos3 produces
    noticeable artifacts (moire bars in image or "teeth" appearing on the
    bottom of horizontal lines).

Anti-alias

  -C mode [off]
    enable anti-aliasing mode (1-3) 
    1	  de-interlace effects only
    2	  resize effects only
    3	  process full frame (slow)

  --antialias_para w,b [0.333,0.500]
    center pixel weight and xy bias explain

De-interlacing

  -I mode [off]
    enable de-interlacing mode (1-5) explain

Video effects

  -K [off]
    enable b/w mode

  -G val [off]
    gamma correction (0.0-10.0)
    note that when this option is used, there is no message
    about it generated in the default transcode stdio.
    when source video has a washed-out appearance, -G 0.9
    is a good starting point.

  -z [off]
    flip video frame upside down. used to correct a surprisingly
    common encoding artifact.

  -l [off]
    mirror video frame

  -k [off]
    swap red/blue (Cb/Cr) in video frame. used to correct a
    surprisingly common encoding artifact.

Clipping Options

    These require some explanantion!

  -j t[,l[,b[,r]]] [off]
    select frame region by clipping border.
    specifying negative values will add an external black border.
    for example, NTSC safe action, safe title, and overscan issues
    can be ameliorated by using -j -16,-32,-16,-32,
    making subtitles that are too close to the edges properly visible.
    -j values also distort the aspect ratio of the output
    image, so they can be used to correct anamorphic distortion in
    source material by applying relatively positive top and bottom
    values compared to left and right values.   

  -Y t[,l[,b[,r]]] [off]
    select (encoder) frame region by clipping border

  --pre_clip t[,l[,b[,r]]] [off]
    select initial frame region by clipping border

  --post_clip t[,l[,b[,r]]] [off]
    select final frame region by clipping border

Multi-pass

  -w b[,k[,c]] [1800,250,100]
    encoder bitrate[,keyframes[,crispness]]
    note that 'keyframes' is often referred to as GOP size.
    no satisfactory explanation of crispness has been provided,
    but it is probably a no-op.

  --video_max_bitrate [same as -w]
    maximum bitrate when encoding variable bitrate
    MPEG-2 streams [same as -w].
    I thought -w was target (something like average) bitrate?

  -R n[,f1[,f2]] [0,divx4,log,pcm.log]
    enable multi-pass encoding (0-3)

  -Q n[,m] [5,5]
    encoding[,decoding] quality (0=fastest 5=best)

  --divx_quant n[,m] [2,31]
    min,max divx encoder min/max quantizer

  --divx_rc p,rp,rr [2000,10,20]
    divx encoder rate control parameter

  --divx_vbv_prof N [3]
    divx5 encoder VBV profile (0=free 5=hiqhq)

  --divx_vbv br,sz,oc  [10000,192,36864]
    divx5 encoder VBV params (bitrate,size,occup.)
    explain

Range control

  -c f1-f2[,f3-f4] [all]
    encode only f1-f2[,f3-f4] (frames or HH:MM:SS)

  -t n,base [off]
    split output to base[1-n].avi with n frames

  --dir_mode base [off]
    process directory contents to base-XXX.avi

  --frame_interval N [1]
    select only every Nth frame to be exported

DVD

  -U base [off]
    process DVD in chapter mode to base-chXXX.avi

  -T t[,c[,d][,a]] [1,1,1]
    select DVD title[,chapter(s)[,angle]]

Cluster mode

  -W n,m[,file] [off]
    autosplit and process part n of m (VOB only)

  --cluster_percentage [off]
    use percentage mode for cluster encoding -W

  --cluster_chunks a-b [off]
    process chunk range instead of selected chunk

  -S unit[,s1-s2] [0,all]
    process program stream unit[,s1-s2] sequences

  -L n [0]
    seek to VOB stream offset nx2kB

V4l

  --import_v4l n[,id] [0]
    channel number and station number or name

MPEG

  --pulldown [off]
    set MPEG 3:2 pulldown flags on export

  --encode_fields [off]
    enable field based encoding (if supported)
    the dv to dvd howto says:
    --encode_fields b tells transcode that the DV
    material is "bottom field first". and this seems
    to be true for all dv.

PSU mode

  --nav_seek file [off]
    use VOB navigation file

  --psu_mode [off]
    process VOB in PSU, -o is a filemask incl. %d ???

  --psu_chunks a-b [all]
    process only selected units a-b for PSU mode

  --no_split [off]
    encode to single file in chapter/psu mode

  --ts_pid 0xnn [0]
    transport video stream pid ???

A52

  --a52_drc_off [enabled]
    disable liba52 dynamic range compression

  --a52_demux [off]
    demux AC3/A52 to separate channels

  --a52_dolby_off [enabled]
    disable liba52 dolby surround
    explain

Internal flags

  --print_status N[,r] [1,1]
    print status every N frames / use CR or NL
    settings of 100-500 are commonly used.

  --progress_off [off]
    disable progress meter status line

  --color N [1]
    enable/disable transcode coloured output. Recognized values
    are '0' (disable coloured output) and '1' (default, 
    enable coloured output). Coloured output will be automatically
    switched to off if stdout/stderr is redirected on a file.

  --write_pid file [off]
    write pid of signal thread to "file"

  --nice N [off]
    set niceness to N
    note that this will not slow down processing significantly
    unless machine is highly loaded. I have never seen a problem
    using --nice 20

  --accel type [autodetect]
    enforce IA32/AMD64 acceleration for type

  --socket file [none]
    socket file for run-time control

  --dv_yuy2_mode [off]
    libdv YUY2 mode (default is I420)

  --config_dir dir [off]
    Assume config files are in this dir.

  --ext video,audio [.avi,.mp3]
    filename extension for output files.

  --export_prof string [none]
    Export profile {vcd, svcd, dvd, dvd-pal, dvd-ntsc}
    Any of the values implicitly set by the profile may
    be overridden by explicitly setting them on the
    command line or via an external config file where
    applicable.

Help

  -q level [1]
    verbosity (0=quiet,1=info,2=debug)

  -h
    print usage summary

  -v
    print version


Transcode Wiki | Recent Changes | Preferences
Password required to edit | View other revisions | View current revision
Edited March 13, 2007 6:04 pm by tarazed.ligo.caltech.edu (diff)
Search: