Krabber needs two information to save wich are NOT a standard for CDDB files !

It saves this information in the header, so no other application should be confused... BUT, you will lost this extra information when you edit the CDDB data with other applications !!!

If you want to patch these applications to write the extra data again you need some code that stores the lines:

# MP3 Category Nr:XXX
# Year:YYYY

XXX is a number from 0..255 !
YYYY is mostly a number. But it could contain characters !!!!
these lines should written after the header and BEFORE the 
# Track frame offsets:
line....
 
If you want to be able to edit this in your application, you might use this 
translation for the category:
That categories are defined by the official mp3 v1 spec AND were extended by the MS-Windows winamp.
Blues is number 0 and so on.
const char*  mp3_categories[] = { "Blues", "Classic Rock", "Country", "Dance", "Disco", "Funk"
                , "Grunge", "Hip-Hop", "Jazz", "Metal", "New Age", "Oldies", "Other", "Pop", "R&B", "Rap"
                , "Reggae", "Rock", "Techno", "Industrial", "Alternative", "Ska", "Death Metal", "Pranks"
                , "Soundtrack", "Euro-Techno", "Ambient", "Trip-Hop", "Vocal", "Jazz+Funk", "Fusion", "Trance"
                , "Classical", "Instrumental", "Acid", "House", "Game", "Sound Clip", "Gospel", "Noise"
                , "AlternRock", "Bass", "Soul", "Punk", "Space", "Meditative", "Instrumental Pop"
                , "Instrumental Rock", "Ethnic", "Gothic", "Darkwave", "Techno-Industrial", "Electronic"
                , "Pop-Folk", "Eurodance", "Dream", "Southern Rock", "Comedy", "Cult", "Gangsta", "Top 40"
                , "Christian Rap", "Pop/Funk", "Jungle", "Native American", "Cabaret", "New Wave", "Psychadelic"
                , "Rave", "Showtunes", "Trailer", "Lo-Fi", "Tribal", "Acid Punk", "Acid Jazz", "Polka"
                , "Retro", "Musical", "Rock & Roll", "Hard Rock", "Unknown" };


If you want to translate CDDB into mp3 categories:
const char* CDDBcateg[] = {"rock", "classical", "jazz", "soundtrack",
                                     "newage", "blues", "folk", "country",
                                     "reggae", "misc", "data" };
rock is 0, misc is 9:
const unsigned int MP3_2_CDDBcateg[] =
               { 5, 0, 7, 9, 9, 9,
                 9, 9, 2, 9, 4, 9, 9, 9, 9, 9,
                 8, 0, 9, 9, 9, 9, 9, 9,
                 3, 9, 9, 9, 9, 9, 9, 9,
const unsigned int CDDBcateg_2_MP3[] = not yet....


