NAME
mpgtx, mpgsplit, mpgcat, mpgjoin, mpginfo, mpgdemux -
manipulate mpeg files
SYNOPSIS
mpgtx command [
options ] file [ range |
file ] ...
DESCRIPTION
mpgtx can split and join MPEG files in various
ways. Three file types are currently handled (more to come): MPEG 1
Video files, MPEG 1/2 Audio files (mp1, mp2, and mp3), MPEG 1
System files (audio and video files), MPEG 2 Program files
(Experimental), MPEG 2 Transport files (demultiplex and info modes
only). mpgtx is a GOP (Group of Pictures) based editor. This means
that mpgtx cuts MPEG files on a Group Of Picture basis, not on a
frame-by-frame basis. A typical GOP duration is about 0.5 sec
(approx. 15 frames), limiting the maximum accuracy of mpgtx.
COMMANDS
- -i
- prints information about files, such as duration, dimention,
bitrate, etc.
- -j
- joins files (ranges may be specified, see the RANGES section).
- -s
- splits files according to the specified ranges (see the RANGES
section).
- -d
- demultiplexes composite mpeg file.
- -T
- manipulates ID3v1 tags from mp3 files (see tagmp3(1)).
- -h
- prints a (not so) short help message.
- -v
- prints version and exit.
- -#
- where # is a number, splits the given files in #
parts.
- --force
- enables joining of incompatible files (some players are very
robust)
- --no-parachute
- prevents mpgtx to try to catch SIGSEGV signal. This is usefull
for debugging.
In addition, when
invoked with the names mpgjoin, mpgcat, mpgsplit, mpgdemux, tagmp3
or mpginfo, mpgtx will modify its behaviour in the following
ways:
mpginfo behaves as mpgtx -i
mpgsplit behaves as mpgtx -s
mpgjoin behaves as mpgtx -j
mpgcat behaves as mpgtx -j -o -
mpgdemux behaves as mpgtx -d
tagmp3 behaves as mpgtx -T
OPTIONS
- -f
- force overwriting of files, never ask.
- -Ax
- Change aspect ratio of mpeg. Valid are 1,2,3,4 for 1:1, 4:3,
16:9, 2.2:1
- -P
- Keep junk or unusual headers in splits
- -X
- Desperate mode, search the whole movie for a valid PACK. In
addition with option -N no search information will be displayed,
only the end summary.
- -N
- Suppress progress output to the console. Speeds up operation a
little on most Systems and much on Macintosh OS9.
Suppress time line check in mpginfo mode.
- -b NAME
- each output file will have the basename NAME
- -o FILE
- FILE will be used as the output file (used with the join
command). if FILE is -, standard output will be
used.
RANGES
Each range must follow a filename or another range.
A range in an MPEG file can be specified using one of this three
notations: Note for OSX Users: Ranges must be enclosed in single or
double Quotes!
- [a-b]
- from value a inclusive to value b inclusive. If
you want half opened ranges, you may want to use ]a-b], [a-b[ or
]a-b[.
- [n/ntot]
- the n th part out of ntot. [1/4] would result in
the first quarter of the specified file.
- {a-b-...}
- with a , b , ... in ascending order. Split
specified file at given boundaries. {55M} therefore means from
beginnig of file to 55Megs and from 55Megs to the end of
file.
VALID VALUES
Values of ranges can be specified in seconds
or as a byte offset.
- Time Format
- HH:MM:SS.SS where the HH: part can be omited
- Offset Format
- a number optionally followed by M for Megabytes k
for kilobytes
- Omitted Values
- An empty value is valid and is equivalent to the corresponding
file boundary:
[-10M] are the first 10 Megabytes of the file.
[1:10:04-] from 1 hour 10 minutes 4 seconds to the end of
file.
RETURN VALUE
All programs return 0 upon successful
completion and 1 on failure.
EXAMPLES
- mpgjoin movie1.mpg [-0:32] [45M-75M] movie2.mpg -o joined.mpg
- joined.mpg will contain the first 32 seconds of movie1.mpg
followed by 30 Megs of movie1.mpg starting at 45 Megs followed by
the whole file movie2.mpg
- mpgtx -124 myfile.mpg -b output
- will split myfile.mpg in 124 parts with names output-001.mpg to
output-124.mpg
- mpgtx -i Wazzup.mp3
- will print infos about given file such as duration, bitrate,
but also album, track, song name if this file has an ID3 tag.
- mpgcat myfile.mpg [2/2] | lpr
- will redirect the second half of myfile.mpg to your printer,
emptying it from toner and paper and make you be fired by your
boss... Use carefully.
BUGS
Plenty of them :)
GOP (Group of Picture) based: well this is not a bug but it's a
limitation. As explained in the DESCRIPTION section, this
limits the accuracy of mpgtx on joins and splits to approximately
15 frames, or 0.5 seconds.
Some artifacts can be seen with bad MPEG players playing joined
files. These players don't take into account the broken link flag
used to discard the first B frames they encounter. This is a bug in
their MPEG decoding engine, not mpgtx.
AUTHOR
Laurent Alacoque <laureck@users.sourceforge.net>
CopyLeft 2001.
Modified by Chris Danis <danish@debian.org>, copyleft
2001.
Philipp Biermann <philipp@biermann.org>,
copyleft 2002.
Erik Schanze <schanzi_@gmx.de>, copyleft
2004.
Get new releases and information from, and send patches, bugs,
girls, money etc. to:
http://mpgtx.sourceforge.net/
THANKS
for your attention. Have a good day.
Godmar Back and Brent Phillips helped me to tune the command line
interface.
Volker Moell patiently teach me how to build rpms. Danke
Volker.
Jean Fransisco Sytem (alias Nicolas Schieli) helped me correct some
nasty bugs.
Thank you guys.