mp3check(1) check mp3 files for consistency


mp3check [-03ABCEFGIKLMNPRSTWYZabcdefghlmopqrst] [--accept=LIST] [--alt-color] [--anomaly-check] [--any-bitrate] [--any-crc] [--any-emphasis] [--any-layer] [--any-mode] [--any-sampling] [--any-version] [--ascii-only] [--color] [--compact-list] [--cut-junk-end] [--cut-junk-start] [--cut-tag-end] [--dummy] [--dump-tag] [--dump-header] [--dump-tag] [--edit-frame-byte=P] [--error-check] [--error-check] [--filelist=FILE] [--fix-crc] [--fix-headers] [--help] [--ign-bitrate-sw] [--ign-constant-sw] [--ign-crc-error] [--ign-junk-end] [--ign-junk-start] [--ign-non-ampeg] [--ign-resync] [--ign-tag128] [--ign-truncated] [--list] [--log-file=FILE] [--max-errors=NUM] [--only-mp3] [--print-files] [--progress] [--quiet] [--raw-elem-sep=NUM] [--raw-line-sep=NUM] [--raw-list] [--recursive] [--reject=LIST] [--show-valid] [--single-line] [--version] [--xdev] [--] [FILES...]


This manual page documents briefly the mp3check command. This manual page was written for the Debian GNU/Linux distribution because the original program does not have a manual page.

mp3check is a program that checks mp3 files for consistency and prints several errors and warnings. It lists stream attributes (color). Layer 1,2,3, mpeg1.0+2.0 are currently supported. CRC check for layer 3. mp3check is very useful for incomplete mp3 detection as it can be used to scan through your mp3 collection and find all mp3s that aren't perfect. Good for use with Napster and other bulk downloading of mp3s.


These programs follow the usual GNU command line syntax, with long options starting with two dashes (`-'). Options can be specified in any order and mixed with files. Option scanning stops after a double dash (--) to allow files beginning with a dash. A summary of options is included below.
-l --list
list parameters by examining the first valid header and size
-c --compact-list
list parameters of one file per line in a very compact format: version (l=1.0, L=2.0), layer, sampling frequency [kHz] (44=44.1), bitrate [kbit/s], mode (js=joint stereo, st=stereo, sc=single channel, dc=dual channel), emphasis (n=none, 5=50/15 usecs, J=CCITT J.17), COY (has [C]rc, [O]riginal, cop[Y]right), length [min:sec], filename (poss. truncated)
-e --error-check
check crc and headers for consistency and print several error messages
-m --max-errors=<int>
with -e: set maximum number of errors to print per file (0==infinity) (range=[0..])
-a --anomaly-check
report all differences from these parameters: layer 3, 44.1kHz, 128kbps, joint stereo, no emphasis, has crc
-d --dump-header
dump all possible header with sync=0xfff
-t --dump-tag
dump all possible tags of known version
list parameters in raw output format for use with external programs
separate elements in one line by char NUM (numerical ASCII code) (default="0x09")
separate lines by char NUM (numerical ASCII code) (default="0x0a")
modify a single byte of a specific frame at a specific offset; B has the format 'frame,offset,byteval', (use 0xff for hex or 255 for dec or 0377 for octal); this mode operates on all given files and is useful for your own experiment with broken streams or while testing this toll ;-)
fix errors:
remove junk before first frame
remove junk after last frame
fix invalid headers (prevent constant parameter switching), implies -e, use with care
fix crc (set crc to the calculated one), implies -e, use with care (note: it is not possible to add crc to files which have been created without crc)
disable error messages for -e --error-check:
-G --ign-tag128
ignore 128 byte TAG after last frame
-R --ign-resync
ignore invalid frame header
-E --ign-junk-end
ignore junk after last frame
-Z --ign-crc-error
ignore crc errors
-N --ign-non-ampeg
ignore non audio mpeg streams
-T --ign-truncated
ignore truncated last frames
-S --ign-junk-start
ignore junk before first frame
-B --ign-bitrate-sw
ignore bitrate switching and enable VBR support
-W --ign-constant-sw
ignore switching of constant parameters, such as sampling frequency
print the message 'valid audio mpeg stream' for all files which error free (after ignoring errors)
disable anomaly messages for -a --anomaly-check:
-C --any-crc
ignore crc anomalies
-M --any-mode
ignore mode anomalies
-L --any-layer
ignore layer anomalies
-K --any-bitrate
ignore bitrate anomalies
-I --any-version
ignore version anomalies
-F --any-sampling
ignore sampling frequency anomalies
-P --any-emphasis
ignore emphasis anomalies
file options:
-r --recursive
process any given directories recursively (the default is to ignore all directories specified on the command line)
-f --filelist=FILE
process all files specified in FILE (one filename per line) in addition to the command line
-A --accept=LIST
process only files with filename extensions specified by comma separated LIST
-R --reject=LIST
do not process files with a filename extension specified by comma separated LIST
-3 --only-mp3
same as --accept mp3,MP3
do not descend into other filesystems when recursing directories (doesn't work in Cygwin environment)
just print all filenames without processing them, then exit
output options:
-s --single-line
print one line per file and message instead of splitting into several lines
suppress the summary printed below all messages if multiple files are given
-g --log-file=FILE
print names of erroneous files to FILE, one per line
-q --quiet
quiet mode, hide messages about directories, non-regular or non-existing files
-o --color
colorize output with ANSI sequences
-b --alt-color
colorize: do not use bold ANSI sequences
generally all unprintable characters in filenames etc are replaced by '!' (ASCII 0-31) and '?' (ASCII 127-159), with this option present the range ASCII 160-255 (which is usually printable: e.g. ISO-8859) is also printed as '?'
-p --progress
show progress information on stderr
common options:
-0 --dummy
do not write/modify anything other than the logfile
-h --help
print this help message, then exit successfully
print version, then exit successfully


This original manual page was written by Klaus Kettner <[email protected]>, for the Debian GNU/Linux system. The current version of this manpage is maintained by Johannes Overmann <[email protected]>, the author of mp3check.