Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  RECMPEG (1)


recmpeg - simple video encoder




recmpeg [options] [output_file] [input_file]


recmpeg is a simple video encoder based on the fame library.

It can encode MPEG-1, MPEG-4 rectangular, and MPEG-4 arbitrary shaped videos.

The input sequence must be provided in uncompressed raw YUV 4:2:0 format (also called YV12). Each frame of the sequence starts from the top left corner to the bottom right, with width*height pixels for the luminance component (Y), and width/2*height/2 for the each of the two chrominance components (U, V), each packed together, in Y, U, V order. Width and height of the sequence are not provided in input file. Thus the input sequence has the following structure:

[ frame 1 Y ][ frame 1 U ][ frame 1 V ][ frame 2 Y ] ...

output_file and/or input_file can be specified but are not required. If no input_file is specified, standard input will be used instead. If no ouput_file is specified, standard output will be used instead.


--help Show usage information.
  Show information about the progress of the encoding.
  Select the profile to use. "mpeg1", "mpeg4" and "mpeg4_shape" are currently supported. When this option is not specified, the default is "mpeg1".
--motion Select the motion estimation algorithm to use. "none", "pmvfast" and "fourstep" are currently supported. When this option is not specified, the default is "pmvfast".
  Number of frames before outputing a new sequence header. This option is useful for example when broadcasting output to a network to allow users to start decoding in the middle of a sequence. The default is to generate only one sequence header at the beginning of the output stream.
--fps Number of frames per second of the input sequence. When not specified, the default is 25. Fractional frame rates are allowed.
--search Specifies the search window, in pixel unit, for motion estimation. Small values give better result on slow motion videos, whereas bigger values work better with fast motion. The default is 16 pixels.
--alpha Quality of the shape coding in percent. Lower quality will produce smaller bitstream. The default is 100% since shape data is often negligible compared to video data.
--buffer Size of the output bitstream buffer. This should be set according to the size of the video being coded. Prediction over a large number of frames and large frame sizes require a greater output buffer. The default is set to 1Mbyte, which should be enough for nearly all videos. The unit is in bytes but Kbytes and Mbytes can be specified by appending a K (resp. an M) to the number (e.g. 4M).
  Use fixed bitrate. The unit is in bits per second but Kbits/s and Mbits/s can be specified by appending a K (resp. an M) to the number (e.g. 4M). When this option is used, quality will vary according to the complexity of the scene, and thus the --quality option becomes irrevelant. The default is to use fixed quality. Note that the actual bitrate after encoding may be slightly different from the one specified here.
  Quality of the encoded video in percent. The lower quality, the smaller encoded bitstream. When using fixed quality, bitrate may vary depending on the complexity of the scene, thus the --bitrate option becomes irrevelant. The default is to use fixed quality 75%.
--coding Specifies the order and type of frames to be coded. Currently supported frame types are ’I’ for intra frames (completely coded) and ’P’ for predicted frames (estimated from preceding ’I’ or ’P’ frame). Other types such as ’B’ (bidirectionnal) or ’S’ (sprite) are *not* yet supported. The default is "I", i.e. intra frames only. Coding must always begin with an I frame, thus "IP" is valid whereas "PI" is not.
  Specifies the picture size in the sequence. It can be either specified in widthxheight format, or by using names such as CIF (352x288), SIF (352x240) or QCIF (176x144). The default is CIF.


recmpeg -v video.mpg video.yuv
  For encoding a simple MPEG-1 video, and see what’s going on.
recmpeg -q 50 -P mpeg4 video.cmp video.yuv
  For encoding a simple MPEG-4 video at 50% quality.
recmpeg -P mpeg4_shape video.cmp video.yuv video.seg
  For encoding an MPEG-4 video with shape coding.
recmpeg -c IP video.mpg video.yuv
  For encoding an MPEG-1 video with motion compensation.


buffer must be large enough to contain encoded data. There is no checking of buffer overflow as this would be too slow. Encoding of B frame is not yet supported.


FAME home page at


The recmpeg utility and FAME library were written by Vivien Chappelier, Thomas Cougnard and Damien Vincent.

Search for    or go to Top of page |  Section 1 |  Main Index

recmpeg RECMPEG (1) July 29, 2001

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.