README (3007B)
1 2 ID3v1 and ID3v1.1 testsuite 3 4 This testsuite was written by Martin Nilsson and is Copyright (c) 5 2003 Martin Nilsson. It may be used freely for non-commercial 6 purposes. More information about ID3 is available on 7 http://www.id3.org/ 8 9 ID3v1 and ID3v1.1 are not formally standardized so this testsuite 10 should not be considered normative. 11 12 The small applications are writting in the programming language 13 Pike, available at http://pike.ida.liu.se/ . The applications uses 14 new functionality only available in the development version (7.5) of 15 Pike. 16 17 Should you find any bugs with this testsuite or otherwise find it 18 useful I wouldn't mind a contribution to my paypal account 19 (nilsson@pike.ida.liu.se). If you find any errors in the testsuite 20 I'd be happy to give one back. 21 22 23 Files 24 25 This testsuite contains the following files. 26 27 README 28 This file. 29 30 analyze.pike 31 This program analyzes an ID3 tag and displays its findings. It has 32 the following exit codes. 33 1 No file or more than one file passed as argument. 34 2 File could not be found and opened. 35 3 File is too small to contain an ID3 tag. 36 4 File contains no ID3 tag in the proper position. 37 5 Something is wrong with the actual tag. 38 39 generate.pike 40 The program that generated the test mp3 files. Executing it 41 without any parameters will regenerate the mp3 files. Execute it 42 with the option --help to get a list of the additional settings 43 the program offers (not much I'm afraid). 44 45 generation.log 46 A log file generated when then test mp3 files was generated. It 47 contains some information about every generated test, e.g. its 48 file name, a short description and a dump of the contents of the 49 tag. 50 51 id3v1*.mp3 52 All test mp3 files follows the convention id3v1_N_C[_P].mp3 where 53 N is the number of the test, C is the category the test is in and 54 the optional P is a flag indicating what kind of problems this tag 55 might cause. P is either "W" for warning or "F" for failure. As an 56 example the third test is an ID3 tag with a faulty header, and 57 thus has the file name id3v1_003_basic_F.mp3. 58 59 tags.m3u 60 A playlist file with a list of all MP3 files, to easily have a 61 player read all the test files at once. 62 63 64 Categories 65 66 The test mp3 files are divided into the following categories. 67 68 basic 69 Testing the basic capabilities of the tags. 70 71 year 72 Tests that focus on the year field. 73 74 genre 75 Tests that focus on the genre field. This is the biggest category 76 since there is one test for every defined category. Note that only 77 the first 80 are considered safe, since the categories after that 78 were not present in the original ID3 implementation. 79 80 extra 81 Tests that test additional capabilities in the ID3 reader. The 82 charset of ID3 isn't formally defined, so both ISO-8859-1 83 capability as well as UTF-8 capability is tested. Also, some 84 readers detect URL:s in the comment field, so this is also tested.