MediaPipe and SVCD ================== 20031201 For more info see also: Matti Haveri remove ei roskaa Contents ======== General Installation (XS)VCD encoding 1. Encode MPEG2 video 2. Encode MPEG1 audio 3. Multiplex video and audio into a single file 4. Author and burn the SVCD Info for the geeks 4. Generate *.xml 5. Build images 6. Burn the SVCD Fine-tuning mpeg2enc ppmtoy4m, mpeg2enc and mplex options Other info How can I convert MPEG back to DV General ======= MediaPipe (currently $0) has mpeg2enc is packaged inside its MPEGEncoder.mpipe, which you can configure and use as a command line utility either directly via MediaPipe's or indirectly via MissingMPEG Tools' graphical user interfaces. Despite other tools' user friendliness I still prefer to encode via MediaPipe for the flexibility it offers. It is currently the only encoder that supports interlaced output which has smoother motion on a TV compared to progressive output. MediaPipe is also currently the only encoder which can be configured to maintain the correct aspect ratio with output resolutions like PAL/NTSC 352x576/480. Installation ============ MediaPipe and MissingMPEG Tools require that you first install Mac OS X Developer Tools. If you bought the boxed version of Mac OS X, the Developer Tools should be included on a separate CD-ROM. If you bought a new Macintosh that came with Mac OS X preinstalled, the Developer Tools installer will probably be in /Applications/Installers/Developer Tools. Failing either of those, or if you'd like to get the latest version of the tools, they are available to Apple Developer Connection (ADC) members. Developer Tools cost nothing to download, you just need to sign up for a free online membership in the Apple Developer Connection (ADC). Sign in, click Download Software then click Mac OS X. You can download it as one 300MB file or as 30 10MB segments (it's a segmented disk image). You can buy the Developer Tools on CD for $20. Then do a "system" install of MediaPipe. (It seems that currently with a clean "local" 0.8.9 install /usr/local/bin/mediapipe doesn't get installed. DO NOT install BOTH "system" and "local" MediaPipe because currently MediaPipe doesn't work with both installs properly. To remove the "local" install: open your home directory, open Library folder, trash MPipes folder. Also in Library, open Frameworks, trash MediaPipe.framework). It doesn't really matter whether you use MissingMPEG Tools or MediaPipe for MPEG2 encoding because they both are just GUI front ends to the underlying mjpeg UNIX tools such as ppmtoy4m and mpeg2enc. (XS)VCD encoding ================ 1. Encode MPEG2 video --------------------- I usually encode MPEG2 with MediaPipe but you may just as well use MissingMPEG Tools to configure MediaPipe. You can configure and save MediaPipe settings as files either via MissingMPEG Tools or directly via MediaPipe, so you don't have to re-enter and memorize the plethora of obscure settings explained below. With a preconfigured MediaPipe template you only have to select a source file by pointing MediaPipe's File Browser to the desired input file. In MediaPipe you basically 1) Add the File Browser pipe and select the QuickTime file you want to use as an input. 2) Add the QuickTime Decoder pipe. 3) If you want progressive output, add the Deinterlacer pipe. Usually I want interlaced output so I don't add the Deinterlacer pipe. 4) Add the Scaler pipe and set it to scale with High Quality to PAL/NTSC 480x576/480. (High quality scaling takes a bit longer and you may not even notice a difference to a faster low quality scaling). 5) Finally add the MPEG Encoder pipe and set its ppmtoy4m and mpeg2enc either via the graphical user interface or via the strings below. Also set the directory where you want the output file to be saved ("Set Destination" button in MediaPipe's main window). You may want to examine ppmtoy4m and mpeg2enc options if the output you get from via the GUI configuration tools isn't satisfactory. I recommend letting MediaPipe Launch CLI in the Terminal window because sometimes it gives you valuable info about possible errors in the settings. Later on you can skip the CLI if you prefer to work in GUI world. Currently you can simultaneously encode multiple files only via the CLI. You don't have to worry if you are not familiar with the CLI because MediaPipe launches and configures the terminal tasks automatically. Note that to encode interlaced SVCD, you must at the moment (200310) set and save the input QuickTime file's high quality flag with QuickTime Player 6 by opening the file in QuickTime Player Pro and selecting Movie/Get Movie Properties/Video Track/High Quality/High Quality Enabled. iMovie 3 automatically sets the reference file's High Quality flag but you must uncheck the "Single Field" flag. If you prefer to encode progressive SVCD, it is also best to set and save the input QuickTime file's high quality flag and use a deinterlacer before encoding MPEG2. Note that if you want progressive output with MissingMpegTools 0.9.3, do not set the input QuickTime file's high quality flag, because MMT 0.9.3 doesn't use a deinterlacer (not setting the High Quality flag or checking the Single Field flag act currently as a deinterlacer). The examples below have been tested for PAL SVCDs with the regular 4:3 DV/D8 video edited and exported via iMovie as a source material. Please let me know if there is something wrong with NTSC settings. I haven't tested 16:9 material. I recommend that you first make a short 1 minute test video and see how it goes before doing longer projects. There are preconfigured MediaPipe templates (*.mpline) of all examples at: Open the desired MediaPipe template by double-clicking it. Then double-click the "File Browser" in MediaPipe's main window to select your input file. Set the directory where you want the output file to be saved ("Set Destination" button in MediaPipe's main window). Example 1 (svcd_interl_480x576/480.mpline): Encode interlaced SVCD. This is my preferred method because horizontal camcorder pans are much smoother on a TV with interlacing. Set the input QuickTime file's High Quality flag and uncheck the Single Field flag. Set MediaPipes as follows: PAL: File Browser: [choose the input file] QuickTime Decoder Scaler : High Quality scaling to 480x576 MPEG Encoder: ppmtoy4m: -v 0 -S 420_mpeg2 -L -I b -F 25:1 mpeg2enc: -v 0 -f 4 -F 3 -n p -a 2 -b 2500 -I 1 -r 16 -q 8 -N -S 790 -B 230 NTSC: File Browser: [choose the input file] QuickTime Decoder Scaler : High Quality scaling to 480x480 MPEG Encoder: ppmtoy4m: -v 0 -S 420_mpeg2 -L -I b -F 30000:1001 mpeg2enc: -v 0 -f 4 -F 4 -n n -a 2 -b 2500 -I 1 -r 16 -q 8 -N -S 790 -B 230 Example 2 (svcd_progr_480x576/480.mpline): Encode progressive SVCD. Interlaced video has smoother motion than progressive video when played on a TV but computer displays may produce comb artifacts without deinterlacing software. Progressive SVCD may also be less blocky than interlaced. If the input file is progressive (the source is a film instead of video etc) there is no point in interlaced encoding because it takes longer (there shouldn't be any difference in the output quality, however). Set the input QuickTime file's High Quality flag and uncheck the Single Field flag. Set MediaPipes as follows: PAL: File Browser: [choose the input file] QuickTime Decoder Deinterlacer Scaler : High Quality scaling to 480x576 MPEG Encoder: ppmtoy4m: -v 0 -S 420_mpeg2 -I p -F 25:1 mpeg2enc: -v 0 -f 4 -F 3 -n p -a 2 -b 2500 -I 0 -r 16 -q 8 -N -S 790 -B 230 NTSC: File Browser: [choose the input file] QuickTime Decoder Deinterlacer Scaler : High Quality scaling to 480x480 MPEG Encoder: ppmtoy4m: -v 0 -S 420_mpeg2 -I p -F 30000:1001 mpeg2enc: -v 0 -f 4 -F 4 -n n -a 2 -b 2500 -I 0 -r 16 -q 8 -N -S 790 -B 230 There are more preconfigured MediaPipe XSVCD templates at: Note that some DV-MPEG conversions require you to crop or add borders before or after scaling to maintain the correct aspect ratio. 2. Encode MPEG1 audio --------------------- Some MPEG2 encoders take care of the audio but encoders like mpeg2enc only handle video so you must encode audio separately. Export the audio as *.wav (or *.aif) from QuickTime Pro (File/ Export/ Sound to Wave (or AIFF)/ Options/ Compressor: None, Rate: 48,000 Hz, Size: 16 bit, Use: Stereo) and feed it to MissingMPEG Tools 0.9.3 and use its internal mp2enc encoder option to encode it as a 224 kb/s, 44.1 kHz *.mp2 (MPEG1 layer 2 audio) suitable for use in SVCD. (Some DVD players accept also 48 kHz and/or MPEG1 layer 3 a.k.a. *.mp3 audio). For DVD-compatible XSVCD and CVD resolutions you may want to encode 48 kHz audio instead of 44.1 kHz so you can easier rip, unmux and concatenate the disks to a DVD later (see below). With low video bitrates you may want to decrease the audio bitrate from 224 kb/s to 160 kb/s or even lower and use mono audio so you can use a faster bitrate for video (see below how to calculate the values). 3. Multiplex video and audio into a single file ----------------------------------------------- Then you have to multiplex the encoded video and audio into a single file. mplex packaged in MissingMpegTools GUI front-end multiplexes movie.mpv and movie.mp2 into movie-1.mpg. (You can check the difference between the Peak bitrate and Average bitrate in the Terminal window, but these figures vary with different material). 4. Author and burn the SVCD --------------------------- This is the easy and recommended way skipping steps 4-6. This way you can easily make a SVCD where you can select tracks with your DVD player remote, just as if you were using a commercial DVD disk. Just get VCD Builder (donationware) and optionally also compose a starting menu with track names and graphics to the beginning of the SVCD. It is better to keep single MPEGs relatively short (max ~40 minutes) because in long MPEGs the audio may get slightly out-of-sync and shorter MPEG chunks are easier to manage and re-encode at lower bitrate if the CD's capacity is exceeded. VCD Builder allows you author smaller MPEGs to a single CD and break individual MPEGs into chapters so you can conveniently play them via the DVD player's remote control (check the right chapter times with QuickTime Player from the input movie or the MPEG files (MPEG2 Playback Component is required for MPEG2 movies)). VCD Builder automatically launches and configures Multitrack CD-ROM XA in Roxio Toast (commercial) after it has processed the input MPEGs. For best results scale or crop your Menu source images to a 4:3 size (iMovie exports stills as 4:3 PAL 768x576 or NTSC 640x480) with apps like Graphic Converter or Photoshop (you may have to configure your DVD player to get the correct aspect ratio on a TV). CDRW disks may be more DVD-player compatible than CDR disks. Notice that not all DVD players can play SVCDs so try before you buy. Congratulations, you're done! Now try the disk in your standalone DVD player before rushing to do longer projects. Info for the geeks ================== If you are satisfied with the results, you can now stop reading this document. The following paragraphs are only for the geeks ;) Generally you can just let VCD Builder and Toast process and burn the input MPEGs automatically but if you insist doing every step the hard way, proceed as follows: 4. Generate *.xml ----------------- Generate an *.xml file from the input MPEGs. vcdxgen packaged in either MissingMpegTools or GNU vcdtoolsX GUI front-end generates svcd.xml from movie-1.mpg you got in step #3 after multiplexing video and audio into a single file. 5. Build images --------------- Then you have to build image files that Toast can burn into SVCDs. vcdxbuild packaged in either MissingMpegTools or GNU vcdtoolsX GUI front-end builds from svcd.xml the following files: MyGreatMovie.toc MyGreatMovie_01.img MyGreatMovie_02_pregap.img MyGreatMovie_02.img or: videocd.toc videocd_01.img videocd_02_pregap.img videocd_02.img Note that both MissingMpegTools and GNU vcdtoolsX contain vcdxbuild and vcdxgen to create *.xml and *.img files. MissingMpegTools give a little more control but otherwise it shouldn't matter which GUI front-end you use. 6. Burn the SVCD ---------------- Finally you can burn the actual SVCD! Select Multitrack CD-ROM XA in Roxio Toast and drag the following files into Toast window, select Burn and Write Disc. MyGreatMovie_01.img MyGreatMovie_02.img or: videocd_01.img videocd_02.img Fine-tuning mpeg2enc -------------------- Note that the standard SVCD mpeg2enc -f 4 setting ignores options like -F -n -b -I -r -V -g -G and obviously sets them to -n p -b 2500 -I 1 -r 16 -V 224 -g 9 -G 15 at least for a PAL source, but setting them here doesn't do any harm and they act as templates which can be activated when switching to User-SVCD -f 5 and/or NTSC. -f 4 defaults to -q 8. -f 4 and -f 5 also default to -S 700 -B 230 which means that when you multiplex the video and audio together the resulting MPEG2 file is splitted if it is larger than 700 MB (a 80 minute CD holds ~797.9 MB of MPEG2 data). If you use -S, you should also define the non-video data bitrate with -B (-B 230 for 224 kb/s audio + ~1% mplex information for video + audio, for example) to assume for sequence splitting calculations. So for a 80 minute CD you can use -S 790 -B 230 if you want to split the MPEG2 stream to fill the entire CD's capacity. (You can force the file to split via mplex -S but there is no way that you have the correct run in/out headers which will very likely result in a VCD/SVCD that does not work properly. Splitting via mplex -S should only be used if you plan to put the streams together afterwards. So pre-split the file via mpeg2enc -S -B options and let mplex split it automatically at the right spots). -f 5 requires you to set a value like -V 224 (or something larger than the default -V 46. This defines the target decoder's video buffer size in kB). The -f 5 option can also be set by choosing "XSVCD" in MissingMPEG Tools' or "User SVCD" in MediaPipe's MPEG options GUI interface (currently you must also add a value like -V 224 in MediaPipe's mpeg2enc options if you set the options via the GUI because otherwise the pipe fails). The mpeg2enc -q option activates variable bitrate encoding and controls the minimum quantization of the output stream. Quantization controls the precision with which image information is encoded. The lower the value the better the image quality. Quality factor should be chosen so that the mplex (see below) output of Peak bitrate and Average bitrate differ for about 20-25%. If the difference is very small (<10%), it is very likely that you have chosen the wrong values for the maximal bitrate or the quality factor is too high. For -b 2500 SVCD bitrate a quality factor of -q 7-9(-11) is recommended. If the quality factor is too high (i.e. near -q 1), you get a near CBR (constant bitrate stream) instead of a VBR stream and the average bitrate when multiplexing is near the mpeg2enc -b value. -b (video-bitrate) sets bitrate of compressed video in kb/s. Defaults are 1152 for VCD, 2500 for SVCD, 7500 for DVD. Some DVD players may not like very high DVD bitrates so use something like -b 8500 at a maximum. -N can be added as a mild high frequency filter than can help lower the average bitrate slightly. Newer mpeg2enc versions have an adjustable -N (0.0-2.0): the higher the value the smaller the file (because the high frequency quantizers are raised -- high -N values will lose detail). -N 0.5 is very mild, -N 1.0 is a good middle point for preserving detail but still saving bits. Using -N values above 1.5 will noticeably reduce the sharpness of the output picture and are normally used only for poor quality sources (VHS tapes, for example). Newer mpeg2enc versions also have some custom or userspecified quantization matrices like -K kvcd or -K tmpgenc for (XS)VCD and DVD. KVCD claims to get better quality in dark scenes but I haven't yet tested it much. Notice that using mpeg2enc -N and -K kvcd at the same time will degrade the picture because kvcd already contains modifications to the high frequency quantizers. -E (unit-coeff-elim option) in newer mpeg2enc versions is disabled by default. If you enable it, a special "unit coefficient elimination" algorithm discharges information of a block that don't carry much information but cost much bitrate to encode. A negative value means that those coefficients are zeroed, a positive means that only texture but not the base intensity coefficients are zeroed. The recommended values are between -20 +20 (the default -E 0 has no effect). Usually you can expect a 5% decreased filesize. But the amount you save is in a range from not really noticable to sometimes up to 20%. -E -10 is a good non-aggressive/mild setting. DVDs require -s (sequence-header-every-gop) so -f 8 (DVD format) sets it automatically. -g (min-gop-size, minimum size Group-of-Pictures) and -G (max-gop-size, maximum size Group-of-Pictures) defaults depend on selected format on newer mpeg2enc versions. High motion videos might benefit from -g being decreased -- in fact you could set that to 1 newer mpeg2enc versions. Lowering -g will increase the size of the file because more I frames will be generated. -G is set correctly for the standards -- don't raise it unless you're only playing back on a computer (or a *very* forgiving DVD player). For (XS)VCD and DVD the maximum GOP is PAL -G 15 and NTSC -G 18. For maximum quality with high bitrates use just I frames with -g 1 -G 1. The filesize will be 60% larger than with the default GOP size using P frames but the encoding will be very fast. -c (closed-gop, all Group-of-Pictures are closed) is required for authoring multi-angle DVD. Minimal increase in filesize (few tenths of a percent). The only flags that affect speed are -4 -2 -r and -I. -4 and -2 control how ruthlessly mpeg2enc discards bad looking matches between sections of adjacent frames during the early stages of the search when it is working with 4*4 and 2*2 clusters of pixels rather than individual pixels. Using -4 1 -2 1 maximizes quality (there is a modest improvement in quality but the encoding is also much slower) and -4 4 -2 4 maximizes speed (although the decline in quality may be below the visual threshold compared to the defaults). The default is -4 2 -2 3 but you may also try -4 2 -2 1. Reducing the radius of the search for matching sections of images by using -r 8 or -r 0 in mpeg2enc also increases speed. Due to the way the search algorithm works the search radius is in effect rounded to the nearest multiple of 8. Furthermore, on modern CPU's the speed gained by reducing the radius below 16 is not large enough to make the marked quality reduction worthwhile for most applications. The default is -r 16 but you can try to use -r 24 or -r 32 for better quality. If you want speed, consider progressive encoding which is almost 2x faster than interlaced. Scaling the original footage to some lower resolution also increases speed. Additional filters and denoisers take their time, too. Newer precompiled mpeg2enc versions can be downloaded from the URL below. Make sure that the downloaded mpeg2enc is executable and replace the older version in MediaPipe with it with terminal window commands something like (when mpeg2enc is in your home directory): chmod 755 ~/mpeg2enc cp ~/mpeg2enc /Library/MPipes/MPEGEncoder.mpipe/Contents/Resources/mpeg2enc (ctrl-click to download) ppmtoy4m, mpeg2enc and mplex options ------------------------------------ You can check ppmtoy4m and mpeg2enc CLI options with the following commands if you have done a "system" install of MediaPipe (just add the ~ character to the beginning of the command string if you have done a "local" install of MediaPipe. (The system install requires sudo or enabling and logging in as root if you want to modify the MPipes folder. The local install makes it easier to add and modify the MPipes folder but currently with a clean "local" 0.8.9 install /usr/local/bin/mediapipe doesn't get installed). * To check ppmtoy4m options, type in the Terminal window the following 1st line and press the Return key: /Library/MPipes/MPEGEncoder.mpipe/Contents/Resources/ppmtoy4m -help usage: /Library/MPipes/MPEGEncoder.mpipe/Contents/Resources/ppmtoy4m [options] [ppm-file] Reads RAW PPM image(s), and produces YUV4MPEG2 stream on stdout. Converts computer graphics R'G'B' colorspace to digital video Y'CbCr, and performs chroma subsampling. If 'ppm-file' is not specified, reads from stdin. options: (defaults specified in []) -o n frame offset (skip n input frames) [0] -n n frame count (output n frames; 0 == all of them) [0] -F n:d framerate [30000:1001 = NTSC] -A w:h pixel aspect ratio [1:1] -I x interlacing [p] p = none/progressive t = top-field-first b = bottom-field-first -L treat PPM images as 2-field interleaved -r repeat last input frame -S mode chroma subsampling mode [420_jpeg] '420_jpeg' -> 4:2:0, JPEG/MPEG-1, interstitial siting '420_mpeg2' -> 4:2:0, MPEG-2, horizontal cositing -v n verbosity (0,1,2) [1] * To check mpeg2enc options, type in the Terminal window the following 1st line and press the Return key: /Library/MPipes/MPEGEncoder.mpipe/Contents/Resources/mpeg2enc -help --verbose|-v num Level of verbosity. 0 = quiet, 1 = normal 2 = verbose/debug --format-f fmt Set pre-defined mux format fmt. [0 = Generic MPEG1, 1 = standard VCD, 2 = VCD, 3 = Generic MPEG2, 4 = standard SVCD, 5 = user SVCD, 6 = VCD Stills sequences, 7 = SVCD Stills sequences, 8 = DVD] --aspect|-a num Set displayed image aspect ratio image (default: 2 = 4:3) [1 = 1:1, 2 = 4:3, 3 = 16:9, 4 = 2.21:1] --frame-rate|-F num Set playback frame rate of encoded video (default: frame rate of input stream) 0 = Display frame rate code table --video-bitrate|-b num Set Bitrate of compress video in KBit/sec (default: 1152 for VCD, 2500 for SVCD, 3800 for DVD) --nonvideo-birate|-B num Non-video data bitrate to assume for sequence splitting calculations (see also --sequence-length). --quantisation|-q num Image data quantisation factor [1..31] (1 is best quality, no default) When quantisation is set variable bit-rate encoding is activated and the --bitrate value sets an *upper-bound* video data-rate --output|-o pathname pathname of output file or fifo (REQUIRED!!!) --vcd-still-size|-T size Size in KB of VCD stills --interlace-mode|-I num Sets MPEG 2 motino estimation and encoding modes: 0 = Progressive (non-interlaced)(Movies) 1 = Interlaced source material (video) --motion-search-radius|-r num Motion compensation search radius [0..32] (default 16) --reduction-4x4|num Reduction factor for 4x4 subsampled candidate motion estimates [1..4] [1 = max quality, 4 = max. speed] (default: 2) --reduction-2x2|-2 num Reduction factor for 2x2 subsampled candidate motion estimates [1..4] [1 = max quality, 4 = max. speed] (default: 3) --min-gop-size|-g num Minimum size Group-of-Pictures (default 12) --max-gop-size|-G num Maximum size Group-of-Pictures (default 12) If min-gop is less than max-gop, mpeg2enc attempts to place GOP boundaries to coincide with scene changes --force-b-b-p|-P Preserve two B frames between I/P frames when placing GOP boundaries --quantisation-reduction|-Q num Max. quantisation reduction for highly active blocks [0.0 .. 5] (default: 0.0) --video-buffer|-V num Target decoders video buffer size in KB (default 46) --video-norm|-n n|p|s Tag output to suit playback in specified video norm (n = NTSC, p = PAL, s = SECAM) (default: PAL) --sequence-length|-S num Place a sequence boundary in the video stream so they occur every num Mbytes once the video is multiplexed with audio etc. N.b. --non-video-bitrate is used to the bitrate of the other data that will be multiplexed with this video stream --3-2-pulldown|-p Generate header flags for 3-2 pull down of 24fps movie material --intra_dc_prec|-D [8..10] Set number of bits precision for DC (base colour) of blocks in MPEG-2 --reduce-hf|-N Reduce high frequency resolution - useful as a mild noise reduction --keep-hf|-h Maximise high-frequency resolution - useful for high quality sources and/or high bit-rates) --sequence-header-every-gop|-s Include a sequence header every GOP if the selected format doesn't do so by default. --no-dummy-svcd-SOF|-d Don't generate of dummy SVCD scan-data for the ISO CD image generator "vcdimager" to fill in. --playback-field-order|-z b|t Force setting of playback field order to bottom or top first --multi-thread|-M num Activate multi-threading to optimise through on a system with num CPU's [0..32], 0=no multithreading, (default: 1) --correct-svcd-hds|-C Force SVCD horizontal_display_size to be 480 - standards say 540 or 720 But many DVD/SVCD players screw up with these values. --no-altscan-mpeg2 Force MPEG2 *not* to use alternate block scanning. This may allow some buggy players to play SVCD streams --help|-? Print this lot out! /Library/MPipes/MPEGEncoder.mpipe/Contents/Resources/mpeg2enc -F 0 Frame-rate codes: 0 - UNDEFINED: illegal/reserved frame-rate ratio code 1 - 24000.0/1001.0 (NTSC 3:2 pulldown converted FILM) 2 - 24.0 (NATIVE FILM) 3 - 25.0 (PAL/SECAM VIDEO / converted FILM) 4 - 30000.0/1001.0 (NTSC VIDEO) 5 - 30.0 6 - 50.0 (PAL FIELD RATE) 7 - 60000.0/1001.0 (NTSC FIELD RATE) 8 - 60.0 * To check mplex options, type in the Terminal window the following line and press the Return key (the line below is wrapped so you have to remove the extra linebreak. The actual mplex directory may be different than in this example if you have MissingMpegTools in some other directory): /Applications/MissingMpegTools/MissingMpegTools.app/Contents/Resources/ mplex -help mjpegtools mplex version 1.7.0 Usage: /Applications/MissingMpegTools/MissingMpegTools.app/Contents/Resources/ mplex [params] -o ... %d in the output file name is by segment count where possible params are: --verbose|-v num Level of verbosity. 0 = quiet, 1 = normal 2 = verbose/debug --format|-f fmt Set defaults for particular MPEG profiles [0 = Generic MPEG1, 1 = VCD, 2 = user-rate VCD, 3 = Generic MPEG2, 4 = SVCD, 5 = user-rate SVCD 6 = VCD Stills, 7 = SVCD Stills, 8 = DVD] --mux-bitrate|-r num Specify data rate of output stream in kbit/sec (default 0=Compute from source streams) --video-buffer|-b num Specifies decoder buffers size in kB. [ 20...2000] --mux-limit|-l num Multiplex only num seconds of material (default 0=multiplex all) --sync-offset|-O num Specify offset of timestamps (video-audio) in mSec --sector-size|-s num Specify sector size in bytes for generic formats [256..16384] --vbr|-V Multiplex variable bit-rate video --packets-per-pack|-p num Number of packets per pack generic formats [1..100] --system-headers|-h Create System header in every pack in generic formats --max-segment-size|-S size Maximum size of output file(s) in Mbyte (default: 2000) (0 = no limit) --split-segment|-M Simply split a sequence across files rather than building run-out/run-in --help|-? Print this lot out! Other info ========== How can I convert MPEG back to DV --------------------------------- Below is a link to preconfigured MediaPipe MPEG-to-DV templates. You can use the templates to convert _demultiplexed_ MPEG back to DV (the pipes don't have a demultiplexer so you have to demultiplex the MPEG first!). There are templates to convert MPEG resolutions PAL 352x288, 352x576, 480x576, 704x576 and 720x576 and NTSC 352x240, 352x480, 480x480, 704x480 and 720x480 to DV. For example: you can convert PAL/NTSC 352x288/240 and 352x576/480 (X)SVCD MPEG2 to DV with the following MediaPipes: File Browser [choose the demultiplexed input file] File Streamer MPEG Decoder Color Conversion Add Borders: Top: 0, Bottom: 0, Left: 4, Right: 4 Scaler : High Quality scaling to PAL/NTSC 720x576/480 QuickTime Encoder: DV - PAL or NTSC, Best Quality, PAL 25 or NTSC 29,97 fps -end-