Linux Commands Examples

A great documentation place for Linux commands


Convert a MJPEG file to raw yuv

see also : mpeg2enc - yuvscaler - yuv2lav - yuvdenoise - yuvplay


lav2yuv [options] lavfile1 [lavfile2 ... lavfileN]

add an example, a script, a trick and tips

: email address (won't be displayed)
: name

Step 2

Thanks for this example ! - It will be moderated and published shortly.

Feel free to post other examples
Oops ! There is a tiny cockup. A damn 404 cockup. Please contact the loosy team who maintains and develops this wonderful site by clicking in the mighty feedback button on the side of the page. Say what happened. Thanks!


echo "==== Creating PNM thumbnail from $AVI ===="
lav2yuv -f 1 $AVI | y4mtoppm -L > $PNM
echo "==== Creating ${JPG} from $PNM ===="
convert $PNM $JPG
rm $PNM
log_info "invoking deinterlacer/pulldown thread"
log_debug "lav2yuv ${inFile} | ${corrector} | ${deinterlaceCmd} > ${fifo} &"
lav2yuv ${inFile} | ${corrector} | ${deinterlaceCmd} > ${fifo} &


lav2yuv converts an MJPEG video sequence described by a sequence of MJPEG video files and/or edit lists pointing to such files into the simple uncompressed planar 4:2:0 Y’CbCr format, as used by mpeg2enc(1) MPEG encoder and image processing filters like yuvscaler(1) or yuv2dfilter(1) or yuvdenoise(1).

Output is to stdout so that by piping the output of lav2yuv into a suitable pipeline it is possible to process and then encode or play back video recorded in any of the mjpegtools MJPEG container formats: AVI, quicktime or edit lists describing editted versions of video held in such files.

Mixing different files with different video formats is currently not possible.

The -S -T -D options are used for scene detection which is used by linux video studio.


lav2yuv accepts the following options:


Force mono-chrome


Conceal frames containing corrupt MJPEG data by repeating the preceeding good frame.

-S list.el

Output a scene list with scene detection

-T num

Set scene detection threshold to num (default: 4)

-D num

Width decimation to use for scene detection (default: 2)

-o num

Frame offset - skip num frames at the beginning. if num is negative all but the last num frames are skipped

-f num

Only num frames are written to stdout. 0 means that all frames are processed.

-A width:height

Set/override the sample aspect ratio (SAR) emitted in the output stream header. Currently, the SAR is only auto-detected for DV files, and guessed otherwise.

-P width:height

Set the intended/approximate display aspect ratio (DAR) for the stream. This value is only used to guess the SAR when it cannot be detected from the input stream. The default DAR is ’4:3’ (corresponding to a standard TV screen); another useful value is ’16:9’ (corresponding to widescreen TV).

-C chroma

Set output chroma (default: ’420jpeg’). Currently, ’420jpeg’, ’420mpeg2’, ’420paldv’, ’422’ are available.


Exchange fields. Useful if the field order was reversed during editing.

see also

mjpegtools, mpeg2enc , yuvscaler , yuv2lav , yuvdenoise , yuvplay


This man page was originally written by Bernhard Praschinger.
If you have questions, remarks, problems or you just want to contact the developers, the main mailing list for the MJPEG-tools is:

For more info, see our website at

How can this site be more helpful to YOU ?

give  feedback