pgmtoy4m man page

pgmtoy4m — Convert mpeg2dec pgm and pgmpipe output to YUV4MPEG2


pgmtoy4m [options]


pgmtoy4m repacks the PGM output from mpeg2dec into YUV4MPEG2 4:2:0p.    No actual changes to the data are made.  The data is unpacked from the quasi-PGM format and placed in YUV4MPEG2 format with the specified sample aspect, frame rate and field order. Output must be either to a pipe or a file, leaving stdout as a terminal will elicit an error and the program will exit.


pgmtoy4m accepts the following options:

-v num

Set verbosity level. (default: 0)


Print a usage summary and exit.

-i t|b|p

Set the interlacing mode.  Top field first (t), bottom field first (b) or  progressive/none (p). (default: t)

-a sar

Set the sample aspect ratio.   (default: 10:11)

-r frame rate

Set the frame rate. (default: 30000:1001)


mpeg2dec -s -o pgmpipe file.mpg | pgmtoy4m -a 10:11 -r 24000:1001 -i b | yuvplay

mpeg2dec -s -o pgm file.mpg
cat *.pgm | pgmtoy4m -r 30000:1001 -i t | yuvplay


This program is specifically designed to work with the output of mpeg2dec and is NOT a general PGM (NetPBM) tool!

From the introduction in the source file:

 * Note: mpeg2dec uses a variation of the PGM format - they're really not
 * "Grey Maps" but rather a catenation of the 420P data (commonly called
 * "YUV").    The type is P5 ("raw") and the number of rows is really
 * the total of the Y', Cb and Cr heights.   The Cb and Cr data is "joined"
 * together.  After the Y' rows you have 1 row of Cb and 1 row of Cr per 
 * "row" of PGM data.

 * NOTE: You MAY need to know the field order (top/bottom field first),
 *      sample aspect ratio and frame rate because the PGM format makes
 *      none of that information available!


This manpage was written by Steven Schultz (sms at 2bsd dot com).


Possible but none known at the present time.


16 December 2003 y4mutils MJPEG tools manual