Mpeg 1.0/2.0 LayersI, II and III header and trailer formats ----------------------------------------------------------- Laurent.Clevy@alcatel.fr * HEADER bits name comments -------------------------------------------------- 12 sync 0xFFF 1 version 1=mpeg1.0, 0=mpeg2.0 2 lay 4-lay = layerI, II or III 1 error protection 0=yes, 1=no 4 bitrate_index see table below 2 sampling_freq see table below 1 padding 1 extension see table below 2 mode see table below 2 mode_ext used with "joint stereo" mode 1 copyright 0=no 1=yes 1 original 0=no 1=yes 2 emphasis see table below -------------------------------------------------- - bitrate_index . mpeg1.0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 layer1 32 64 96 128 160 192 224 256 288 320 352 384 416 448 layer2 32 48 56 64 80 96 112 128 160 192 224 256 320 384 layer3 32 40 48 56 64 80 96 112 128 160 192 224 256 320 . mpeg2.0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 layer1 32 48 56 64 80 96 112 128 144 160 176 192 224 256 layer2 8 16 24 32 40 48 56 64 80 96 112 128 144 160 layer3 8 16 24 32 40 48 56 64 80 96 112 128 144 160 - sampling_freq . mpeg1.0 0 1 2 44100 48000 32000 . mpeg2.0 0 1 2 22050 24000 16000 - mode: 0 "stereo" 1 "joint stereo" 2 "dual channel" 3 "single channel" - mode extension: 0 MPG_MD_LR_LR 1 MPG_MD_LR_I 2 MPG_MD_MS_LR 3 MPG_MD_MS_I jsbound : mode_ext 0 1 2 3 layer 1 4 8 12 16 2 4 8 12 16 3 0 4 8 16 - emphasis: 0 "none" 1 "50/15 microsecs" 2 "reserved" must not be used ! 3 "CCITT J 17" * TRAILER at end of file - 128 bytes offset type len name -------------------------------------------- 0 char 3 "TAG" 3 char 30 title 33 char 30 artist 63 char 30 album 93 char 4 year 97 char 30 comments 127 byte 1 genre -------------------------------------------- - genre : 0 "Blues" 1 "Classic Rock" 2 "Country" 3 "Dance" 4 "Disco" 5 "Funk" 6 "Grunge" 7 "Hip-Hop" 8 "Jazz" 9 "Metal" 10 "New Age" 11 "Oldies" 12 "Other" 13 "Pop" 14 "R&B" 15 "Rap" 16 "Reggae" 17 "Rock" 18 "Techno" 19 "Industrial" 20 "Alternative" 21 "Ska" 22 "Death Metal" 23 "Pranks" 24 "Soundtrack" 25 "Euro-Techno" 26 "Ambient" 27 "Trip-Hop" 28 "Vocal" 29 "Jazz+Funk" 30 "Fusion" 31 "Trance" 32 "Classical" 33 "Instrumental" 34 "Acid" 35 "House" 36 "Game" 37 "Sound Clip" 38 "Gospel" 39 "Noise" 40 "AlternRock" 41 "Bass" 42 "Soul" 43 "Punk" 44 "Space" 45 "Meditative" 46 "Instrumental Pop" 47 "Instrumental Rock" 48 "Ethnic" 49 "Gothic" 50 "Darkwave" 51 "Techno-Industrial" 52 "Electronic" 53 "Pop-Folk" 54 "Eurodance" 55 "Dream" 56 "Southern Rock" 57 "Comedy" 58 "Cult" 59 "Gangsta" 60 "Top 40" 61 "Christian Rap" 62 "Pop/Funk" 63 "Jungle" 64 "Native American" 65 "Cabaret" 66 "New Wave" 67 "Psychadelic" 68 "Rave" 69 "Showtunes" 70 "Trailer" 71 "Lo-Fi" 72 "Tribal" 73 "Acid Punk" 74 "Acid Jazz" 75 "Polka" 76 "Retro" 77 "Musical" 78 "Rock & Roll" 79 "Hard Rock" 80 "Unknown" - frame length : . mpeg1.0 layer1 : (48000*bitrate)/sampling_freq + padding layer2&3: (144000*bitrate)/sampling_freq + padding . mpeg2.0 layer1 : (24000*bitrate)/sampling_freq + padding layer2&3 : (72000*bitrate)/sampling_freq + padding