transcode(1)

NAME

   transcode - LINUX video stream processing tool

SYNOPSIS

   transcode -i name [-o name] [-y vmod,amod]
             [-w vbitrate [ ,vkeyframes [ ,vcrispness ] ]]
             [-a atrack [ ,vtrack ]]
             [-b abitrate [ ,is_vbr [ ,quality [ ,mode ] ] ]]
             [-M demuxer_mode] [-F codec_string] [other options]

QUICK SUMMARY

   transcode supports a huge range of options, as described in detail in
   further section. Only one option is mandatory: -i name, for supplying
   the input main (video) source. All other options are discretionary and
   they can be skipped. Most commonly needed options are -o, -y, -w, -a,
   -b, -M, -F and a fair number of transcode session needs a little more
   than those. See section below for full description of all transcode
   options. To inspect the properties of a module, such as their
   parameters or the help text, use the tcmodinfo tool.

DESCRIPTION

   transcode is a linux text-console utility for video stream processing,
   running on a platform that supports shared libraries and threads.

   It supports a huge range of options, as described in detail in further
   section. Only one option is mandatory: -i name, for supplying the input
   main (video) source. All other options are discretionary and they can
   be skipped. Most commonly needed options are -o, -y, -w, -a, -b, -M, -F
   and a fair number of transcode session needs a little more than those.
   See section below for full description of all transcode options.

   Decoding and encoding is done by loading modules that are responsible
   for feeding transcode with raw video/audio streams (import modules) and
   encoding the frames (export modules).

   It supports elementary video and audio frame transformations, including
   de-interlacing or fast resizing of video frames and loading of external
   filters.

   A number of modules are included to enable import of DVDs on-the-fly,
   MPEG elementary (ES) or program streams (VOB), MPEG video, Digital
   Video (DV), YUV4MPEG streams, NuppelVideo file format, AVI based codecs
   and raw or compressed (pass-through) video frames and export modules
   for writing DivX;-), XviD, DivX 4.xx/5.xx or uncompressed AVI and raw
   files with MPEG, AC3 (pass-through) or PCM audio.

   Additional export modules to write single frames (PPM) or YUV4MPEG
   streams are available, as well as an interface import module to the
   avifile library.

   Its modular concept is intended to provide flexibility and easy user
   extensibility to include other video/audio codecs or filetypes. A set
   of tools is included to demux (tcdemux), extract (tcextract) and decode
   (tcdecode) the sources into raw video/audio streams for import, probing
   (tcprobe) and scanning (tcscan) your sources and to enable
   post-processing of AVI files, fixing AVI file header information
   (avifix), merging multiple files (avimerge), splitting large AVI files
   (avisplit) to fit on a CD and avisync to correct AV-offsyncs.

OPTIONS

   -A
       use AC3 as internal audio codec [off]. Only pass-through supported.

   -B  n[,m[,M]]
       resize to height-n*M rows [,width-m*M] columns [off,32].  M must be
       one of 8, 16 or 32. It makes no difference which M you use. You
       might look at the fast flag of the -Z option if you don not want to
       calculate n and m yourself.

   -C  mode
       enable anti-aliasing mode (1-3) [off].

       1
           de-interlace effects only

       2
           resize effects only

       3
           process full frame (slow)

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

   -E  r[,b[,c]]
       audio output samplerate [Hz], bits per sample and channels [as
       input]. The option "-J resample" must be provided for export
       modules not capable of re-sampling. Samplerate and bits per sample
       can be specified as 0 to mean "same as input"; this allows
       converting from stereo to mono while leaving the other parameters
       alone (-E 0,0,1).

   -F  codec_string
       encoder parameter strings [module dependent]. The -F parameter has
       different meanings for different export modules. Those meanings are
       documented in transcode_export(1) manual page.

   -G  val
       Gamma correction (0.0-10.0) [off]. A value of 1.0 does not change
       anything. A value lower than 1.0 will make the picture "brighter",
       a value above 1.0 will make it "darker".

   -H  n
       auto-probe n MB of source (0=disable) default [1]. Use a higher
       value than the default to detect all subtitles in the VOB.

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

       1

           "interpolate scanlines" linear interpolation (takes the average
           of the surronding even rows to determine the odd rows), and
           copies the even rows as is.

       2

           "handled by encoder" tells the encoding code to handle the fact
           that the frames are interlaced. Most codecs do not handle this.

       3

           "zoom to full frame" drops to to half size, then zooms out.
           This can cause excessive blurring which is not always unwanted.
           On the other hand results are quite good.

       4

           "drop field / half height" drop every other field and keep half
           height.

       5

           "interpolate scanlines / blend frames" linear blend (similar to
           -vop pp=lb in mplayer) this, like linear blend calculates the
           odd rows as the average of the surrounding even rows, and also
           calculates the even rows as an average of the original even
           rows and also calculates the even rows as an average of the
           original odd rows and averages the calculated and original
           rows. Something like avg (avg(row1,row3), avg(row2, row4))

   -J  filter1[,filter2[,...]]
       apply external filter plugins [off]. The avalaible import modules
       and their options are documented into the transcode_filter(1)
       manual page.  Note: You can specify more than one -J argument. The
       order of filter arguments specify in which order the filters are
       applied. Note also, for transcode internally it makes no difference
       whether you do "-J filter1 -J filter2" or "-J filter1,filter2". Use
       tcmodinfo -i NAME to get more information about the filter_NAME.
       Not all filters support this but most of them do. Some of the
       filter plugins have additional documentation in the docs/
       directory.

   -L  n
       seek to VOB stream offset nx2kB default [0]. This option is usually
       calculated automatically when giving --nav_seek and -c.

   -K
       enable black/white by removing colors mode (grayscale) [off].
       Please note this does not necessarily lead to a smaller image /
       better compression. For YUV mode, this is done by emptying the
       chroma planes, for RGB mode a weightend grayscale value is
       computed.

   -M  mode
       demuxer PES AV sync modes (0-4) [1].

       Overview
           The demuxer takes care that the right video frames go together
           with the right audio frame. This can sometimes be a complex
           task and transcode tries to aid you as much as possible.
           WARNING: It does make a difference if you (the user) specifies
           a demuxer to use or if transcode resp. tcprobe(1) chooses the
           one which it thinks is right for your material. This is done on
           purpose to avoid mystic side-effects. So think twice, wether
           you specify a demuxer or let transcode choose one or you might
           end up with an off-sync result.

       0
           Pass-through. Do not mess with the stream, switch off any
           synchronization/demuxing process.

       1
           PTS only (default). Synchronize video and audio by inspecting
           PTS/DTS time stamps of audio and video. Preferred mode for PAL
           VOB streams and DVDs.

       2
           NTSC VOB stream synchronization feature. This mode generates
           synchronization information for transcode by analyzing the
           frame display time.

       3
           (like -M 1): sync AV at initial PTS, but invokes
           "-D/--av_fine_ms" options internally based on "tcprobe" PTS
           analysis. PTS stands for Presentation Time Stamp.

       4
           (like -M 2): initial PTS / enforce frame rate, with additional
           frame rate enforcement (for NTSC).

   -N  format
       select export format. Default is mp3 for audio, and
       module-dependant format for video. This option has two different
       behaviours and accepts two different set of options, as side-effect
       of ongoing export module transition. For old-style modules (current
       default, as found in 1.0.x series), argument is audio format ID has
       hexadecimal value: see below for a list of recognized IDs. Default
       id, so default format for audio exported track, is MP3 (0x55). If
       you are using, the transcodes the new-style encode/multiplex
       modules (still under development, see the encode and multiplex
       directories), argument is a comma-separated pair of export format
       names. Use tcmodinfo tool to check out what new-style export module
       support what formats.

       Available format for old-style behaviour are:

       0x1
           PCM uncompressed audio

       0x50
           MPEG layer-2 aka MP2

       0x55
           MPEG layer-3 aka MP3. Also have a look at --lame_preset if you
           intend to do VBR audio.

       0x2000
           AC3 audio

       0xfffe
           OGG/Vorbis audio

   -O
       skip flushing of buffers at encoder stop [off, do flushing at each
       stop].

   -P  flag
       pass-through flag (0=off|1=V|2=A|3=A+V) [0]. Pass-through for flag
       != 1 is broken and not a trivial thing to fix.

       You can pass-through DV video, AVI files and MPEG2 video. When
       doing MPEG2 pass-through (together with the -y raw module), you can
       give a requantization factor by using -w (for example -w 1.5), this
       will make the MPEG2 stream smaller.

       The pass-through mode is useful for reconstruction of a broken
       index of an AVI file. The -x ffmpeg import-module analyzes the
       compressed bitstream and can detect a keyframe for DIV3, MPEG4
       (DivX, XviD, ..) and other formats. It then sets an internal flag
       which the export module will respect when writing the frame out.

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

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

       0 Constant bitrate (CBR) encoding. [default]
           The codec tries to achieve constant bitrate output. This means,
           each encoded frame is mostly the same size. This type of
           encoding can help in maintaining constant filling of hardware
           buffer on set top players or smooth streaming over networks. By
           the way, Constant bitrate is often obtained sacrifying quality
           during high motion scenes.

       1 Variable bitrate encoding: First pass.
           In this mode, the codec analyses the complete sequence in order
           to collect data that can improve the distribution of bits in a
           second VBR pass. The collected data is written to second sub
           argument (default: divx4.log). This data is codec dependant and
           cannot be used across codecs. It is strongly advised to use the
           same codec settings for the VBR analysis pass and the VBR
           encoding pass if you want predictable results.

           The video output of the first pass is not of much use and can
           grow very large. Its a good idea to not save the video output
           to a file but directly to /dev/null. Usually the bitrate is
           ignored during first pass.

           Disabling audio export makes sense too, so use -y codec,null.
           It is not recommended to disable the audio import because
           transcode might drop video frames to keep audio and video in
           sync. This is not possible when the audio import is disabled.
           It may lead to the fact that the codec will see a different
           sequence of frames which effectively renders the log file
           invalid.

       2 Variable bitrate encoding: Second pass.
           The first pass allowed the codec collecting data about the
           complete sequence. During the second pass, the codec will use
           that data in order to find an efficient bit distribution that
           respects both the desired bitrate and the natural bitrate curve
           shape. This ensures a good compromise between quality and
           desired bitrate.

           Make sure you activate both sound and video encoding during
           this pass.

       3 Constant quantizer encoding.
           The quantizer is the "compression level" of the picture. The
           lower the quantizer is, the higher is the quality of the
           picture. This mode can help in making sure the sequence is
           encoded at constant quality, but no prediction can be made on
           the final bitrate. When using this mode, the -w option changes
           its meaning, it now takes the quantizer ranging from 1 to 31.
           Note that constant quantizer encoding is not supported with
           some codecs (notably mpeg1/2/4 with -y ffmpeg).

   -S  unit[,s1-s2]
       process program stream unit[,s1-s2] sequences [0,all]. This option
       is a bit redundant to --psu*. This option lets you specify which
       units you want to have decoded or skipped. At a program stream unit
       boundary, all (internal) mpeg timers are reset to 0. tcprobe will
       tell you how many units are in one file.

   -T  t[,c[,a]]
       select DVD title[,chapter[,angle]] [1,1,1]. Only a single chapter
       is transcoded. Use -T 1,-1 to trancode all chapters in a row. You
       can even specify chapter ranges.

   -U  base
       process DVD in chapter mode to base-ch%02d.avi [off].

   -V  format
       select video layout / colour space for internal processing.
       Possible values for this options are: yuv420p (default), yuv422p,
       rgb24

       yuv420p is default because it is most codecs internal format so
       there is no need for conversions. Some modules may not support it
       though: use rgb in that case.

       rgb24 is the old (pre-0.6.13) transcode internal format. Most
       codecs do not support this format natively and have to convert it
       to/from YUV first, so only use this option if youre really sure or
       you want to use a module that doesnt support YUV.

       yuv422p is an experimental feature and a developers playground. Not
       many import, export and filter modules support this colorspace. A
       4:2:2 colorspace offers much more quality than the consumer
       oriented 4:2:0 colorspaces like I420/YV12. Most equipment in film
       and video post-production uses YUV422. YUV422 doubles the precision
       for chroma (color difference) information in the image.

       All internal transformations are supported in YUV422 mode
       (clipping, flipping, zooming, etc).

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

   -X  n[,m,[M]]
       resize to height+n*M rows [,width+m*M] columns [off,32]. M must be
       one of 8, 16 or 32. It makes no difference which M you use. You
       might look at the fast flag of the -Z option if you do not want to
       calculate n and m yourself.

   -Y  top[,left[,bottom[,right]]]
       select (encoder) frame region by clipping border. Negative values
       add a border [off].

   -Z  widthxheight[,fast|interlaced]
       resize to width columns, height rows with filtering
       [off,notfast,notinterlaced]. If fast is given, transcode will
       calculate the parameters for -X and/or -B. The file fast can only
       be used when the import and export geometry of an image is a
       multiple of 8.

       In fast mode, a faster but less precise resizing algorithm will be
       used resulting in a slightly less good quality. Beside this (small)
       drawback, it is worth a try.

       If interlaced is given, transcode will assume the frame is
       interlaced when resizing, and resize each field independently. This
       will give better results on interlaced video, but is incompatible
       with fast mode. Also, the height (both old and new) must be a
       multiple of 4.

       It is also possible to omit width OR height. In this case,
       transcode will calculate the missing value using the import aspect
       ratio. The new value will be aligned to be a multiple of 8. Using
       an additional fast or interlaced is also possible.

       Examples (assume input is a 16:9 coded file at 720x576):

                                   -Z 576x328           uses filtered zoom.
                                   -Z 576x328,fast      uses fast zoom.
                                   -Z 576x,fast         guess 328 and do fast zoom.
                                   -Z x328,interlaced   guess 576 and do interlaced zoom.

       If you also set --export_prof, you can use just "fast" to indicate
       that fast resizing is wanted (likewise with "interlaced").

   -a  ach[,vch]
       extract audio[,video] track for encoding.

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

       The mode parameter specifies which modus lame should use for
       encoding. Available modes are:

       0
           Joint Stereo (default)

       1
           Full stereo

       2
           Mono

   -c  f1-f2[,f3-f4[, ... ] ]
       encode only frames f1-f2 [and f3-f4]. Default is to encode all
       available frames. Use this and youll get statistics about
       remaining encoding time. The f[N] parameters may also be timecodes
       in the HH:MM:SS.FRAME format. Example:

                                   -c 500-0:5:01,:10:20-1:18:02.1

       Will encode only from frame 500 to 5 minutes and 1 second and from
       10 min, 20 sec to 1 hour, 18 min, 2 sec and one frame.

       Note that transcode starts counting frames at 0 and excludes the
       last frame specified. That means that "-c 0-100" will encoded 100
       frames starting at frame 0 up to frame 99

   -d
       swap bytes in audio stream [off]. In most cases, DVD PCM audio
       tracks require swapping of audio bytes

   -e  r[,b[,c]]
       PCM audio stream parameter. Sample rate [Hz], bits per sample and
       number of channels [48000,16,2]. Normally this is autodetected.

   -f  rate[,frc]
       import video frame rate[,frc] [25.000,0]. If frc (frame rate code)
       is specified, transcode will calculate the precise frames per
       second internally. Valid values for frc are:

       1
           23.976 (24000/1001.0)

       2
           24

       3
           25

       4
           29.970 (30000/1001.0)

       5
           30

       6
           50

       7
           59.940 (2 * 29.970)

       8
           60

       9
           1

       10
           5

       11
           10

       12
           12

       13
           15

   -g  WidthxHeight
       video stream frame size [720x576].

   -h
       print out usage information.

   -i  name
       input file/directory/device/mountpoint/host name, default is
       [/dev/zero].

   -j  top[,left[,bottom[,right]]]
       select frame region by clipping border. Negative values add a
       border [off].

   -k
       swap red/blue (Cb/Cr) in video frame [off]. Use if people have blue
       faces.

   -l
       mirror video frame [off].

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

   -n  0xnn
       import audio format id [0x2000]. Normally, this is autodetected.

   -o  file
       output file name, default is [/dev/null].

   -p  file
       read audio stream from separate file [off].

   -q  debuglevel
       possible values for debuglevel:

       0
           QUIET

       1
           INFO

       2
           DEBUG

       4
           STATS

       8
           WATCH

       16
           FLIST

       32
           VIDCORE

       64
           SYNC

       128
           COUNTER

       256
           PRIVATE

   -r  n[,m]
       reduce video height/width by n[,m] [off]. Example: -r 2 will
       rescale the framesize of a 720x576 file to 360x288.

   -s  gain,[center,[front,[rear]]]
       increase volume of audio stream by gain,[center,front,rear] default
       [off,1,1,1].

   -t  n,base
       split output to base%03d.avi with n frames [off].

   -u  m[,n]
       use m framebuffer[,n threads] for AV processing [10,1].

   -v
       print version.

   -w  b[,k[,c]]
       encoder bitrate[,keyframes[,crispness]] [(6000 for MPEG 1/2, 1800
       for others),250,100].

   --video_max_bitrate  b
       Use b as maximal bitrate (kbps) when encoding variable bitrate
       streams.

   -x  vmod[,amod]
       video[,audio] import modules [auto,auto]. If omitted, transcode
       will probefor appropriate import modules. The avalaible import
       modules and their options are documented into the
       transcode_import(1) manual page.

   -y  vmod[,amod[,mmod]]
       video[,audio[,multiplex]] export modules [null]. If omitted,
       transcode will encode to the null module. If a multiplex module is
       given, transcode will use the new-style encode/multiplex modules
       (still under development, see the encode and multiplex
       directories); if no multiplex module is given, the traditional
       export modules will be used. The avalaible export, encoder and
       multiplexor modules and their options are documented into the
       transcode_export(1) manual page.

   --accel  type
       enforce experimental IA32 acceleration for type [autodetect].  type
       may be one of

       C
           No acceleration

       ia32asm
           plain x86 assembly

       mmx
           MMX instruction set

       3dnow
           3DNow! instruction set

       sse
           SSE instruction set

       sse2
           SSE2 instruction set

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

   --avi_comments  F
       Read AVI header comments from file F [off]. The AVI file format
       supports so-called tomb-stone data. It can be used to write
       annotations into the AVI file.

       See the file docs/avi_comments.txt for a sample input file with all
       tags. When the file is read, empty lines and lines starting with
       # are ignored. The syntax is: "TAG<space>STRING". The order of
       the tags does not matter. If a tag has no string following it, it
       is ignored. That means, you can use the file docs/avi_comments.txt
       as input and only fill out the fields you want.

       A very simple example is:

                                   ----------------snip----------------
                                   INAM My 1st Birthday
                                   ISBJ My first steps!
                                   IART My proud family

                                   ----------------snip----------------
       Keep in mind that there is no endless space in the AVI header, most
       likely its around 1000 bytes.

   --zoom_filter  string
       use filter string for video resampling -Z [Lanczos3] The following
       filters are available:

       Bell

       Box

       Lanczos3 (default)

       Mitchell

       Hermite

       B_spline

       Triangle

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

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

   --export_asr  C
       set export aspect ratio code C [as input] Valid codes for C are:

       1
           1:1

       2
           4:3

       3
           16:9

       4
           2.21:1

   --export_prof  S
       WARNING: this option will be renamed as --export_profile in future
       releases.

       Select an export profile {vcd, svcd, xvcd, dvd}
       [-pal|-ntsc|-secam]. Default is no profile.

       If you set this meta option to one of the values below, transcode
       will adjust some internal paramaters as well as geometry and
       clipping. If no export modules are specified, mpeg2enc for video
       and mp2enc for audio are used when compiled with mjpegtools
       support.

       Valid values for S are e.g. vcd, vcd-pal, vcd-ntsc, svcd, svcd-pal,
       ...

       xvcd profile is equal to svcd except that it allows for up to 9000
       Kbps video bitrate (default is 5000) and arbitrary audio
       samplerate.

       When one of the above is used, transcode will calculate the needed
       clipping and resizing values for you based on the import and export
       aspect ratio. This is especially handy if you want to encode a 16:9
       DVD into a 4:3 SVCD for example. Transcode internally then sets
       --pre_clip to add the black bars ("letterboxing").

       If you use "vcd" instead of "vcd-pal" or "vcd-ntsc", transcode will
       make an educated guess if PAL or NTSC vcd is wanted. The same is
       true for the other profiles. When the input file has no aspect
       ratio information at all, transcode guesses it based on the import
       frame sizes. You can set the import aspect ratio by giving
       --import_asr CODE.

       Examples (assume input is a 16:9 coded file at 720x576 (PAL)):

                                   --export_prof svcd      clip top/bot -96; resizes to 480x576
                                   --export_prof vcd-ntsc  clip top/bot -96; resizes to 352x240

       This enables simpilified commandlines where transcode tries to set
       sensible values for mpeg export. When you dont specify an export
       module with -y, mpeg2enc will be used.

                                   transcode -i vob/ --export_prof svcd -Z fast -o test

       The ffmpeg export module `-y ffmpeg does support profiles as well.
       The module tries to be smart and sets internal ffmpeg parameters
       which are otherwise quite tricky to find out. Usage is similar to
       the above.

                                   transcode -i vob/ --export_prof dvd -y ffmpeg -o test -m test.ac3
                                   tcmplex -m d -i test.m2v -p test.ac3 -o test.mpg

   --export_par  C[,N]
       set export pixel aspect ratio to C[,N]. To encode anamorphic
       material, transcode can encode the target pixel aspect ratio into
       the file. This is NOT the actual aspect ratio of the image, but
       only the amount by which every single pixel is stretched when
       played with an aspect ratio aware application, like mplayer.

       To encode at non standard aspect ratios, set both C and N. E.g. to
       make every pixel twice as high as its wide (e.g. to scale back to
       normal size after deinterlacing by dropping every second line).

       If C and N are specified, the value set for C does give the pixel
       aspect ratio of the width and N the one for the height. If only C
       is specified, the table below applies.

       Valid codes for C are

       1
           1:1 No stretching

       2
           12:11 5:4 image to 4:3 (ex: 720x576 -> 768x576)

       3
           10:11 3:2 image to 4:3 (ex: 720x480 -> 640x480)

       4
           16:11 5:4 image to 16:9 (ex: 720x576 -> 1024x576)

       5
           40:33 3:2 image to 16:9 (ex: 720x480 -> 872x480)

   --import_asr  C
       set import aspect ratio code C [autoprobed]

       Valid codes for C are

       1
           1:1

       2
           4:3

       3
           16:9

       4
           2.21:1

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

       The --keep_asr options changes the meaning of -Z. It tries to fit
       the video into a framesize specified by -Z by keeping the original
       aspect ratio.

                                   +----------------+                            +---480-----+
                                   |                |                            | black     |
                                   |720x306 = 2.35:1| -> -Z 480x480 --keep_asr ->|-----------4
                                   |                |                            | 480x204   8
                                   +----------------+                            |-----------0
                                   | black     |
                                   +-----------+

       Consider --keep_asr a wrapper for calculating -Y options and -Z
       options.

   --mplayer_probe
       use external mplayer binary to probe stream, reset default import
       modules as mplayer ones [off]. Default is to use internal probing
       code. Using this option without mplayer import modules (-x mplayer)
       can lead to unpredictable and possibly wrong results.

   --quantizers  min,max
       set encoder min/max quantizer. This is meaningfull only for video
       codecs of MPEG family. For other kind of codecs, this options is
       harmless. [2,31]

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

   --divx_vbv_prof  N
       divx5 encoder VBV profile (0=free-5=hiqhq) [3]. Sets a predefined
       profile for the Video Bitrate Verifier. If N is set to zero, no
       profile is applied and the user specified values from --divx_vbv
       are used.

       Valid profiles

       0
           Free/No profile ( Use supplied values )

       1
           Handheld ( 320, 16, 3072 )

       2
           Portable ( 1920, 64, 12288 )

       3
           Home Theatre ( 10000, 192, 36864 )

       4
           High Definition ( 20000, 384, 73728 )

   --divx_vbv  br,sz,oc
       divx5 encoder VBV params (bitrate,size,occup.) [10000,192,36864]
       These parameters are normally set through the profile parameter
       --divx_vbv_prof. Do not mess with theses value unless you are
       absolutely sure of what you are doing. Transcode internally
       multiplicates vbv_bitrate with 400, vbv_size with 16384 and
       vbv_occupancy with 64 to ensure the supplied values are multiples
       of what the encoder library wants.

   --export_fps  rate[,frc]
       set export frame rate (and code) [as input].Valid values for frc
       are

       frc rate

       1
           23.976 (24000/1001.0)

       2
           24

       3
           25

       4
           29.970 (30000/1001.0)

       5
           30

       6
           50

       7
           59.940 (2 * 29.970)

       8
           60

       9
           1

       10
           5

       11
           10

       12
           12

       13
           15

   --export_frc  F
       set export frame rate code F [as input].  Obsolete, use
       --export_fps 0,F

   --hard_fps
       disable smooth dropping (for variable fps clips) [off]. See
       /docs/framerate.txt for more information.

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

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

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

   --no_bitreservoir
       disable lame bitreservoir for MP3 encoding [off]

   --config_dir  dir
       Assume config files are in this dir. This only affects the -y
       ffmpeg and -y xvid4 modules. It gives the path where the modules
       search for their configuration.

   --lame_preset  name[,fast]
       use lame preset with name [off]. Lame features some built-in
       presets. Those presets are designed to provide the highest possible
       quality. They have for the most part been subject to and tuned via
       rigorous listening tests to verify and achieve this objective.
       These are continually updated to coincide with the latest
       developments that occur and as a result should provide you with
       nearly the best quality currently possible from LAME. Any of those
       VBR presets can also be used in fast mode, using the new vbr
       algorithm. This mode is faster, but its quality could be a little
       lower. To enable the fast mode, append ",fast"

       <N kbps>
           Using this preset will usually give you good quality at a
           specified bitrate. Depending on the bitrate entered, this
           preset will determine the optimal settings for that particular
           situation. While this approach works, it is not nearly as
           flexible as VBR, and usually will not reach the same quality
           level as VBR at higher bitrates. ABR.

       medium
           This preset should provide near transparency to most people on
           most music. The resulting bitrate should be in the 150-180kbps
           range, according to music complexity. VBR.

       standard
           This preset should generally be transparent to most people on
           most music and is already quite high in quality. The resulting
           bitrate should be in the 170-210kbps range, according to music
           complexity. VBR.

       extreme
           If you have extremely good hearing and similar equipment, this
           preset will provide slightly higher quality than the "standard"
           mode. The resulting bitrate should be in the 200-240kbps range,
           according to music complexity. VBR.

       insane
           This preset will usually be overkill for most people and most
           situations, but if you must have the absolute highest quality
           with no regard to filesize, this is the way to go. This preset
           is the highest preset quality available. 320kbps CBR.

       (taken from http://www.mp3dev.org/mp3/doc/html/presets.html)[1]

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

   --nav_seek  file
       use VOB or AVI navigation file [off]. Generate a nav file with
       tcdemux -W >nav_log for VOB files or with aviindex(1) for AVI
       files.

   --psu_mode
       process VOB in PSU, -o is a filemask incl. %d [off]. PSU means
       Program Stream Unit and this mode is useful for (mostly) NTSC DVDs
       which have several program stream units.

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

   --no_split
       encode to single file in chapter/psu/directory mode [off]. If you
       dont give this option, youll end up with several files in one of
       the above mentioned modes. It is still possible to merge them with
       avimerge(1).

   --multi_input

       (EXPERIMENTAL) enable multiple input mode: intelligently join input
       files in import. The inputs can be expressed using standard POSIX
       globbing. While theorically all input modules are supported, it is
       safe to use this only when dealing with constant-sized audio (PCM)
       and intra-frame only video codecs (es: MJPEG). To be safe, use this
       mode with im, ffmpeg and raw import modules.

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

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

   --a52_drc_off
       disable liba52 dynamic range compression [enabled]. If you dont
       specify this option, liba52 will provide the default behaviour,
       which is to apply the full dynamic range compression as specified
       in the A/52 stream. This basically makes the loud sounds softer,
       and the soft sounds louder, so you can more easily listen to the
       stream in a noisy environment without disturbing anyone.

       If you let it enabled this this will totally disable the dynamic
       range compression and provide a playback more adapted to a movie
       theater or a listening room.

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

   --a52_dolby_off
       disable liba52 dolby surround [enabled]. Selects whether the output
       is plain stereo (if the option is set) or if it is Dolby Pro Logic
       - also called Dolby surround or 3:1 - downmix (if the option is not
       used).

   --log_no_color
       disable colored log messages. By default transcode use colors in
       log messages in order to easily distinguish message classes. That
       behaviour can be problematic if output of transcode is a file or a
       pipe, so this option came handful.

   --dir_mode  base
       process directory contents to base-%03d.avi [off]

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

   --encode_fields  C
       enable field based encoding (if supported) [off]. This option takes
       an argument if given to denote the order of fields. If the option
       is not given, it defaults to progressive (do not assume the picture
       is interlaced)

       Valid codes for C are:

       p
           progressive (default)

       t
           top-field first

       b
           bottom-field first

   --dv_yuy2_mode, --dv_yv12_mode
       Indicates that libdv decodes Digital Video frames in YUY2 (packed)
       or YV12 (planar) mode, respectively. Normally transcode figures out
       the correct mode automatically, but if you try to transcode PAL DV
       files and the results look strange, try one of these options.

   --write_pid  file
       write pid of signal thread to file [off]. Enables you to terminate
       transcode cleanly by sending a SIGINT (2) to the pid in file.
       Please note file will be overwritten. Usage example

                                   $ transcode ... --write_pid /tmp/transcode.pid &
                                   $ kill -2 `cat /tmp/transcode.pid`

   --nice  N
       set niceness to N [off]. The option --nice which renices transcode
       to the given positive or negative value. -10 sets a high priority;
       +10 a low priority. This might be useful for cluster mode.

   --progress_meter  N
       select type of progress meter [1]. Selects the type of progress
       message printed by transcode:

       0
           no progress meter

       1
           standard progress meter

       2
           raw progress data (written to standard output)

       Scripts that need progress data should use type 2, since the format
       of type 1 is subject to change without notice.

   --progress_rate  N
       print progress every N frames [1]. Controls how frequently the
       status message is printed (every N frames).

   --socket  FILE
       Open a socket to accept commands while running. See tcmodinfo(1)
       and /docs/filter-socket.txt for more information about the
       protocol.

ENVIRONMENT

   TRANSCODE_LOG_NO_COLOR
       if set, forces the colored logging off for all the tools of
       transcode suite.

NOTES

   *
       Most source material parameter are auto-detected.

   *
       Clipping region options are expanded symmetrically. Examples:

       -j 80 will be expanded to -j 80,0,80,0

       -j 80,8 will be expanded to -j 80,8,80,8

       -j 80,8,10 will be expanded to -j 80,8,10,8

   *
       maximum image size is 1920x1088.

   *
       The video frame operations ordering is fixed: "-j -I -X -B -Z -Y -r
       -z -l -k -K -G -C" (executed from left to right).

   *
       Shrinking the image with -B is not possible if the image
       width/height is not a multiple of 8, 16 or 32.

   *
       Expanding the image with -X is not possible if the image
       width/height is not a multiple of 8, 16 or 32.

   *
       The final frame width/height should be a multiple of 8. (to avoid
       encoding problems with some codecs)

       1.
           Reducing the video height/width by 2,4,8 Option -r factor can
           be used to shrink the video image by a constant factor, this
           factor can be 2,4 or 8.

       2.
           Clipping and changing the aspect ratio transcode uses 3 steps
           to produce the input image for the export modules

           1.
               Clipping of the input image.

           2.
               Changing the aspect ratio of the 1) output.

           3.
               Clipping of the 2) output.

   *

       Bits per pixel (bits/pixel) is a value transcode calculates and
       prints when starting up. It is mainly useful when encoding to MPEG4
       (xvid, divx, etc). Youll see line like

       [transcode] V: bits/pixel | 0.237

       Simplified said, bits/pixel quantifies how good an encode will be.
       Although this value depends heavily on the used input material, as
       a general rule of thump it can be said that values greater or close
       to 0.2 will result in good encodes, encodes with values less than
       0.15 will have noticeable artifacts.

       Bits per pixel depends on the resolution, bitrate and frames per
       second. If you have a low value ( < 0.15), you might want to raise
       the bitrate or encode at a lower resolution. The exact formula is

                                       bitrate*1000
                                   bpp =  ------------------
                                       width*height*fps

   *

       AC3 / Multiple channels

       When you do import an audio stream which has more then two audio
       channels - this is usually the case for AC3 audio - transcode will
       automagically downmix to two channels (stereo). Youll see line
       like

       [transcode] A: downmix | 5 channels -> 2 channels

       This is done, because most encoders and audio filters can not
       handle more than 2 channels correctly. The PCM internal
       representation does not support more than two channels, audio will
       be downmixed to stereo No downmix will happen, if you use AC3 as
       the internal audio codec or use audio pass-through.

EXAMPLES

   The following command will read its input from the DVD drive (I assume
   /dev/dvd is a symbolic link to the actual DVD device) and produce a
   splitted divx4 movie according to the chapter information on the DVD
   medium. The output files will be named my_movie-ch00.avi,
   my_movie-ch01.avi ...

                       transcode -i /dev/dvd/ -x dvd -j 16,0 -B 5,0 -Y 40,8 -s 4.47 -U my_movie -y xvid -w 1618

   Option -j 16,0 will be expanded to -j 16,0,16,0 and results in 16 rows
   from the top and the bottom of the image to be cut off. This may be
   usefull if the source consists of black top and bottom bars.

   Option -B 5,0 tells transcode to shrink the resulting image by 5*32=160
   rows in height.

   Option -Y 40,8 will be expanded to -Y 40,8,40,8 and tells transcode to
   ...

   Option -s 4.47 tells transcode to increase audio volume by a factor
   4.47.

   Option -U my_movie tells transcode to operate in chapter mode and
   produce output to files named my_movie-ch00.avi, my_movie-ch01.avi....
   You can either merge the files afterwards with avimerge or add the
   option --no_split to the command line.

   Option -y xvid tells transcode to use the export module export_xvid.so
   which in turn uses the XviD encoder to encode the video.

   Option -w 1618 tells transcode to set the encoder bitrate to 1618 which
   is lower than the default of 1800 and results in smaller files with the
   loss of visual quality.

   Lets assume that you have an NTSC DVD (720x480) and you want to make an
   NTSC-SVCD
       The frame size of the DVD movie is 720x480 @ 16:9. For the purpose
       of frame resizing, the width 720 is not relavant (that is, it will
       not be used in the following reasoning). It is not needed because
       the original frame size is really defined by the frame height and
       aspect ratio. The _final result_ should be 640x480, encoded as
       480x480 @ 4:3 (the height 480 multiplied by the aspect ratio 4:3
       gives the width 640). This same frame size (640x480) can also be
       encoded as 640x360 @ 16:9 (the height 360 by the aspect ratio 16:9
       gives the width 640).

       As the _original video_ has aspect ratio 16:9, first we resize to
       640x360, keeping that aspect ratio. But the aspect ratio has to be
       changed to 4:3. To find the frame size in the new aspect ratio the
       height 360 is multiplied by the new aspect ratio, giving the width
       480. This is accomplished with the transcode options "--export_asr
       2 -Z 480x360,fast".

       To avoid stretching the video height in this change (because the
       new aspect ratio is less than the original), black borders should
       be added at the top and bottom of the video, bringing the frame to
       the desired 480x480 @ 4:3 size. The transcode option for this is
       "-Y -60,0,-60,0".

       If for some reason (maybe a subtitle filter) the black borders (of
       height 60 each) should be added before resizing the frame and
       changing the aspect ratio to 4:3. One reason for that would be the
       need of running a _pre_ filter after adding the black borders. Then
       the options "-j" or "--pre_clip" can be used instead of "-Y". In
       this case the black border height has to be recalculated by
       applying the aspect ratio 4:3 to the value alreadyfound: 60 * (4/3)
       = 80. The transcode options "-j -80,0,-80,0" or "--pre_clip
       -80,0,-80,0" are then used instead of "-Y -60,0,-60,0", and "-Z
       480x360,fast" is replaced by "-Z 480x480,fast".

AUTHORS

   Written by Thomas Oestreich
   <[email protected]>, Tilmann Bitterberg and the
   Transcode-Team

   See the AUTHORS file for details.

SEE ALSO

   transcode_export(1) , transcode_filter(1) , transcode_import(1) ,
   avifix(1) , avisync(1) , avimerge(1) , avisplit(1) , tcprobe(1) ,
   tcscan(1) , tccat(1) , tcdemux(1) , tcextract(1) , tcdecode(1) ,
   tcmodinfo(1) , tcxmlcheck(1) , transcode(1)

WWW

   Frequently asked questions (FAQ) at
    http://www.transcoding.org/cgi-bin/transcode?Transcode_FAQ [1] Example
   transcode sessions at
    http://www.transcoding.org/cgi-bin/transcode?Command_Examples [1]

BUGS

   Yes, there are bugs in transcode! Do your part and report them
   immediately.

   For details, see
    http://www.transcoding.org/cgi-bin/transcode?Reporting_Problems [1]

NOTES

    1. http://www.mp3dev.org/mp3/doc/html/presets.html)
       a



Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.


Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.

Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.


Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.

Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.


Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.

Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.