Content-type: text/html Manpage of AVI2MJPG

AVI2MJPG

Section: User Manuals (1)
Updated: AUGUST 2001
Index Return to Main Contents
 

NAME

avi2mjpg - versatile AVI/MPEG to PAL/NTSC converter  

SYNOPSIS

avi2mjpg [ --version ] [ --help ] -v -o FILENAME [ --geometry XxY+XOFF+YOFF ] [ --scale XxY | Xx | xY ] [ --top LINES ] [ --bottom LINES ] [ --left COLUMNS ] [ --right COLUMNS ] [ --tweakitc 0|1|2|3|4 ] [ --jpegQuality 0-100 ] [ --jpegMethod 0|1|2|3 ] [ --oTemporalOrder -1|0|1 ] [ --iTemporalOrder -1|0|1 ] [ --oExchange ] [ --iExchange ] [ --tolerance PERCENTAGE ] [ --videostrategy s|r|i|t|p|q ] [ --split FRAMES ] [ --seek FRAME ] [ --subfile FILENAME ] [ --subfps FPS ] [ --suboffset TIMEOFFSET ] [ --subyoffset YOFFSET ] [ --subfont FONTDESC ] [ --oSampleRate RATE ] [ --degree DEGREE ] [ --noprogress ] [ --doubleYRes ] [ --halveYRes ] [ --hardware ] [ --codecOptions ATTRIBUTE=VALUE [ ,ATTRIBUTE=VALUE [ , ... ]] [ --hwdevice VIDEODEV ] [ --noaudio ] [ --videostream STREAMNO ] [ --audiostream STREAMNO ] [ --noautoborder ] [ --norm p|n ] INPUTFILE  

DESCRIPTION

Avi2mjpg is an AVI/MPEG to PAL/NTSC converter. It can crop, scale, add borders, add subtitles, telecine/3:2 pulldown, inverse telecine, change the samplerate of the sound, display the current frame on your buz,DC10(+),LML33 and more.

You can use this program, for example, to convert a 24fps DivX DVD backup to MJPEG for playback on your PAL/NTSC TV (with subtitles, if you want) with synchronous sound. Other common framerates are also supported. See 30FPSDVD for some comments on backups of 30fps DVDS. Full NTSC<->PAL is not supported.  

OPTIONS

-v, --verbose
Want to see what the program does? This is the option you want to specify on the commandline. (also useful for bugreports)
-o, --output
This option lets you specify the output filename. Not that you need printf-style formatstring if you want the --split option to be useful. For example -o output%03d.avi
-g, --geometry XxY+XOFF+YOFF
X-style geometry specification. You may only use this to crop the inputframes.
-z, --scale XxY|X|xY
Scale the input (or the region you have selected with --geometry to the given size. If you leave out X or Y it is chosen such that the aspect ratio is conserved.
-t,--top LINES
Add LINES lines at the top of the output frame.
-b, --bottom LINES
Add LINES lines at the bottom of the output frame, useful to make room for subtitles under a wide-screen movie.
-r, --right COLUMNS
Add COLUMNS colums to the right of the output frame. -l, --left COLUMNS Add COLUMNS colums to the left of the output frame. --tweakitc 0-4 This changes the start position of our invese telecine machine, it is very probable that you need to fiddle with this option to get the desired results (no guarantees however). -q, --jpegQuality 0-100 Set the 'quality' setting of the JPEG encoder. The default is 100. -m, --jpegMethod 0|1|2|3 Set the encoding method of the JPEG encoder:

-m 0 is 'fastest'

-m 1 is 'integer slow'

-m 2 is 'integer fast'

-m 3 is 'float'

-i -oTemporalOrder
This option specifies if and in what time-order the output is interlaced, see the file INTERLACING for more info.
-I -iTemporalOrder
This option specifies of and in what time-order the input is interlaced, see the file INTERLACING for more info. Note that the framerateconverters do not have special provisions for time-interlaced input. Results may be poor.
-x, -oExchange
Exchange the output lines. This has the same effect as the '-x' option for lavplay(1).
-X, -iExchange
The lines of the input frames are interchanged. Use this option if the input frame has wrong space-interlace order. Incorrect usage of this option can lead to very ugly results.
--tolerance PERCENTAGE
The tolrance is the maximum allowed relative speed change. The default is 5 this allows 24fps->25fps conversions by just changing the playback speed.
--videostrategy s|r|i|t|p|q
The program decides for itself what type of framerate conversion is needed, based on the input fps, output fps and the tolerance. If you do not agree then you can force a certain type of conversion. See the README file for an explanation of the available options.
-s, --split FRAMES
Open a new outputfile every FRAMES frames. This will only give the desired result if the output filename is a correct printf formatstring like output%03d.avi.
--seek FRAME
This option lets you seek to frame FRAME in the input file. WARNING: --seek for AVI files is broken, at least if you use avifile-0.53.5. It should work fine for MPEG files.
--subfile FILENAME
The program will read subtitiles from this file, see subreader.c for a list of supported formats.
--subfps FPS
It can be that the subtitle is made for the 30fps version of the movie while your DivX DVD backup only has 24fps. Use this option to tell avi2mjpg the framerate for which the subtitles were made.
--suboffset OFFSET
If the subtitles run at the right speed but constantly appear to early or to late, use this option to specify the time offset in hundreds of seconds.
--subyoffset OFFSET
The subtitles, by default, appear 10 pixels above the bottom of the output frame. If you do not like this, change the yoffset with this option.
--subfont FONTDESC
The default font.desc is arialbd-16.desc in $HOME/.mplayer/font/ . You can use a different font if you put the desired font.desc in $HOME/.mplayer/font/ and tell avi2mjpg about it using this option.
--oSampleRate
The output samplerate is, by default, the same as the input samplerate. If you want a different output samplerate (for example: 44100 because your soundcard can't handle 48000), specify the desired samplerate with this option.
--degree
We use polynomial interpolation to scale the sound (speed and pitch, as if your taperecorder runs too fast/slow). This option specifies the degree of the polynomial to be used for the interpolation. The default is 1 (linear interpolation). If you are not satisfied with lame 'linear interpolation' please feel free to use a polynomial of dergree 60 instead.
-Q, --noprogress
If you dislike the progress indicator, you can turn if off with this switch.
--doubleYRes
Sometimes it can be useful to double the y resolution just before encoding, see the FAQ for more info on this subject. In general: if avi2mjpg complains that it needs interlaced output, try this switch.
--halveYRes
The only way this program can deal with time-interlaced input (without many artefacts or much luck) is by throwing away one of the fields. This is the option that lets you ask te program to do that. Combination with --doubleYRes can be quite useful.
--hardware
This option lets you preview the current frame on the output of your buz,DC10(+),LML33. WARNING: do not use this option if your buz,DC10(+),LML33 is used by another program like lavplay(1) or lavrec(1). The only exeption is XawTV, but NEVER EVER close XawTV when your buz,DC10(+),LML33 is in use by this program (or another program), your machine will OOPS and die in the near future, sync and mount -a -o remount,ro are your best friends in this case.

Note that your computer must be really really fast to produce realtime output, there is no sound anyway. If there are people that claim they get realtime output on their dual Atlon 1.4GHz machines, i will consider adding sound support. (I have an AMD K6-2-350)

--hwdevice VIDEODEV
If you are the lucky owner of more V4L cards, then you can use this option to tell avi2mjpg about the location of the buz/DC10(+)/LML33 card you wish to see the output of this program on.
--codecOptions OPTION=VALUE[,OPTION=VALUE[,...]]
With this you can give options to AVI codecs, for example --codecOptions Quality=4,Brightness=60 this sets the maximum quality for DivX postprocessing and it sets the brightness to 60. Note that the avifile library remembers these settings.
--noaudio
Ignore the audiostream in the inputfile (if there is any audio stream). The preferred way to check if some bug is due to the audio processing part of avi2mjpg.
--audiostream STREAMNO
If your inputfile has more than 1 audio stream, you can use this option to select the stream you desire. The default is 0 i.e. the first stream.
--videostream STREAMNO
If your inputfile has more than 1 video stream, you can use this option to select the stream you desire, The default is 0 i.e. the first stream.
This program automatically enlarges borders if the output frame dimensions
are not multiples of 16. This is required for hardware playback on the buz/DC10(+)/LML33. If, for some reason, you want avi2mjpg not to mess with the borders, then tell the program with this switch.
-n, --norm n|p
On what kind of TV do you want to watch the output of this program. The default is PAL, p , because I only have PAL TV's. People that have NTSC TV's should specify n , to signify that they want NTSC output. (or change the default config.h and recompile if they didn't already do that)
 

EXAMPLE

An example:

$ avi2mjpg dancemonkeyboy.mpg -o deranged.avi --doubleYRes --hardware -n p

This will convert that strange movie with Steve Ballmer to MJPG avi for your viewing discomfort.

 

AVAILABILITY

The latest version of avi2mjpg should be available at
http://www.phys.uu.nl/~snel/avi2mjpg/.  

BUGS

The name is wrong, since this program also handles MPEG files. Suggested workaround: make a symlink from mpg2mjpg to avi2mjpg. Let me know if you have a really good suggestion for another name. I didn't like the other obvious options like: avmp2mjpg, avimpg2mj, avpg2mjpg etc etc.

For more bugs see the BUGS file. (I am too lazy to maintain two seperate compies of LARGE databases that should be identical) The subject of submitting bugreports is detailed in the README file.  

VERSION

The version of avi2mjpg documented here is 0.0.1pre.  

AUTHOR

Rik Snel <snel@phys.uu.nl>  

CREDITS

See the CREDITS file.  

SEE ALSO

lavplay (1)


 

Index

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
EXAMPLE
AVAILABILITY
BUGS
VERSION
AUTHOR
CREDITS
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 10:30:03 GMT, August 20, 2001