1# Checkmate MP3 checker 2 3Checkmate MP3 Checker is a free program that checks MP3 files for errors. It 4scans MP3 files to see if the frames are where they are supposed to be, whether 5the frame headers are correct and whether the frame headers are consistent 6throughout the file. It reports some information on each file and an indication 7whether the file is good or bad. 8 9There are two interfaces available: 10* Checkmate MP3 Checker, a Windows interface that looks like Windows Explorer; 11* mpck, a command line program that runs on multiple platforms. 12 13[Download the latest release](https://github.com/Sjord/checkmate/releases). 14 15## Checkmate MP3 Checker 16 17Checkmate MP3 Checker is a Windows interface to check MP3 files: 18 19![Checkmate MP3 Checker screenshot](mp3checker/screenshots/checkmate-mp3-checker.png "Checkmate MP3 Checker screenshot") 20 21You can download the Windows executable on the 22[releases](https://github.com/Sjord/checkmate/releases) page. 23 24## Mpck 25 26Example: 27 28 $ mpck '001 Katy Perry - Dark Horse (feat. Juicy J).mp3' 29 SUMMARY: 001 Katy Perry - Dark Horse (feat. Juicy J).mp3 30 version MPEG v1.0 31 layer 3 32 bitrate 320000 bps 33 samplerate 44100 Hz 34 frames 8250 35 time 3:35.510 36 unidentified 0 b (0%) 37 errors none 38 result Ok 39 40### Building 41 42If your release does not have `configure`, first run 43 44 ./autogen.sh 45 46After that, it is the normal build method: 47 48 ./configure 49 make 50 make install 51 52For Windows there is a Visual Studio project in the `vc++` directory. 53 54### Usage 55 56 Usage: mpck [OPTION]... [FILE]... 57 58 Verbosity: 59 -v, --verbose print some extra info 60 -q, --quiet print only Ok or Bad per file 61 -B, --badonly only report bad files 62 Other options: 63 -R, --recursive check directories recursively 64 -e, --extention=EXT only check files ending on .EXT 65 -r short for -R -e mp3 66 -m, --maxname=NUM report bad for filenames which exceed NUM characters 67 -n, --namecheck check for strange characters in the filename 68 -x, --xmloutput output results in XML 69 -h, --help print this help, then exit 70 -V, --version print version information 71 72### Output 73 74If all is well, mpck will output something like this: 75 76 SUMMARY: mp3/test.mp3 77 version MPEG v1.0 78 layer 3 79 bitrate 128000 bps 80 samplerate 44100 Hz 81 frames 7271 82 time 3:09.936 83 unidentified 0 b (0%) 84 errors none 85 result Ok 86 87Occasionally, something goes wrong and mpck prints an error. It has one 88of the following formats: 891) mpck: stat on blah failed 902) mpck:bla: foo bar error 913) mpck:bla:34003: yet another error 92 93Number 1 indicates a general error. Number 2 means an error occured in file 94bla. Number 3 says an error occured in file bla, at offset 34003 (decimal). 95 96### Exit status 97 98mpck returns one of the following values: 99 100 0 Everything went OK and no broken files were found. 101 1 Everything went OK, but at least one broken file was found. 102 2 (ENOENT) File or directory not found, stat failed. 103 4 (EINTR) The program received a SIGINT. 104 5 (EIO) Read error. 105 12 (ENOMEM) Malloc failed due to memory shortage. 106 21 (EISDIR) The given file is a directory. 107 22 (EINVAL) Invalid argument, no filename supplied. 108 36 (ENAMETOOLONG) File extention or file name is too long. 109 110## License 111 112Both Checkmate mpck and Checkmate MP3 checker are licensed under the [GNU 113General Public License](COPYING), which gives you permission to modify and 114distribute the software as you like, as long as you include the source code. 115 116 117