NAME
qmp3cut - extract and/or delete parts of a mp3 file
SYNOPSIS
qmp3cut [option]... file
DESCRIPTION
qmp3cut allows to extract and/or delete a fragment of a mp3 file. some
parameters must be supplied in order to define the start/size/end cut
points and what to do then: either the fragment must be copied to
another file or erased from the file (or both)
GENERAL OPTIONS
-d, --delete
deletes the fragment from the file. if option --output is used,
deletion action is always done after fragment extraction.
-h, --help
show a brief help and exit.
-o <outfile>, --output=<outfile>
outfile is the file where the frames contained in the specified
fragment will be copied.
-v, --verbose
verbose.
-V, --version
show version and exit.
CUT OPTIONS
cut options are used to specify at which frame the fragment begins
(options -b or -B), ends (options -e and -E), or which size it has
(option -s). at least, one cut option must be specified. neither the
options -b and -B, and the options -e and -E can be used together;
also, a begin, end and size option can be used at the same time.
by default, the fragment begins at the first frame and ends at the last
frame; there’s no default value for size.
all the values are treated as a frame number unless a format specifier
is used. see the FORMATS section below for information. values must be
positive integer.
-b <begin>[<format>], --set-begin-from-eof=<begin>[<format>]
begin specifies the first frame of the file that belongs to the
cut counting from the end of the file.
-B <begin>[<format>], --set-begin=<begin>[<format>]
begin specifies the first frame of the file that belongs to the
cut counting from the beginning of the file.
-e <end>[<format>], --set-end-from-eof=<end>[<format>]
end specifies the last frame of the file that belongs to the cut
counting from the end of the file.
-E <end>[<format>], --set-end=<end>[<format>]
end specifies the last frame of the file that belongs to the cut
counting from the beginning of the file.
-s <size>[<format>], --set-size=<size>[<format>]
size specifies the number of frames contained in the cut.
-S <begin>-<end>, --slice <begin>-<end>
slice specifies the starting and ending points of the cut as a
timeslice, which is to say, two time specifications
([[h:]m:]s[.ms]) joined by a hyphen.
FORMATS
cut options can have also an optional modifier. if this modifier is not
used, then the value provided with the corresponding cut option will be
interpreted as a number of frames. since most of the times will be
difficult to specify a cut in terms of frames, the following modifiers
are provided:
j value is interpreted as milliseconds.
m value is interpreted as minutes.
s value is interpreted as seconds.
b value is interpreted as bytes.
k value is interpreted as kbytes (1024 bytes).
M value is interpreted as megabytes (1024 kbytes).
in either case, the values specified will be rounded to get an integer
number of frames.
EXAMPLES
here are some examples:
to get the last ten seconds of a file:
qmp3cut -b 10s -o outfile.mp3 infile.mp3
two ways of getting the first minute of a file:
qmp3cut -E 1m -o outfile.mp3 infile.mp3
qmp3cut -s 1m -o outfile.mp3 infile.mp3
three ways of getting the second quarter of a file:
qmp3cut -S 15:0-30:0 -o outfile.mp3 infile.mp3
qmp3cut -B 15m -E 30m -o outfile.mp3 infile.mp3
qmp3cut -s 15m -E 30m -o outfile.mp3 infile.mp3
qmp3cut -B 15m -s 15m -o outfile.mp3 infile.mp3
NOTES
if neither the options --output nor --delete are specified, the program
will do nothing.
BUGS
usually, the mpg123 player (and any other app mp3-read capable) report
messages in the way like "cannot rewind by XXX bytes" where XXX is a
negative value on streams extracted with qmp3cut. this is due to frame
dependency (frame decoding depends sometimes of neighbourhood frames
when bit reservoir technique is used at encoding time) and possibly
will be corrected in a (near?) future.
there’s no support for variable bit rate (vbr) files.
tests have been done only with mpeg version 1 layer iii streams, though
it may (or not) work with other versions/layers.
AUTHOR
dmanye@etse.urv.es
http://www.etse.urv.es/~dmanye/quelcom/quelcom.html
SEE ALSO
qmp3info(1), qmp3join(1), qmp3check(1), qmp3report(1)
qwavinfo(1), qwavjoin(1), qwavcut(1), qwavsilence(1), qwavfade(1),
qwavheaderdump(1)