module metadata @[heap] enum Genre as u8 { blues = 0 classic_rock = 1 country = 2 dance = 3 disco = 4 funk = 5 grunge = 6 hip_hop = 7 jazz = 8 metal = 9 new_age = 10 oldies = 11 other = 12 pop = 13 r_and_b = 14 rap = 15 reggae = 16 rock = 17 techno = 18 industrial = 19 alternative = 20 ska = 21 death_metal = 22 pranks = 23 soundtrack = 24 euro_techno = 25 ambient = 26 trip_hop = 27 vocal = 28 jazz_funk = 29 fusion = 30 trance = 31 classical = 32 instrumental = 33 acid = 34 house = 35 game = 36 sound_clip = 37 gospel = 38 noise = 39 alternrock = 40 bass = 41 soul = 42 punk = 43 space = 44 meditative = 45 instrumental_pop = 46 instrumental_rock = 47 ethnic = 48 gothic = 49 darkwave = 50 techno_industrial = 51 electronic = 52 pop_folk = 53 eurodance = 54 dream = 55 southern_rock = 56 comedy = 57 cult = 58 gangsta = 59 top_40 = 60 christian_rap = 61 pop_funk = 62 jungle = 63 native_american = 64 cabaret = 65 new_wave = 66 psychadelic = 67 rave = 68 showtunes = 69 trailer = 70 lo_fi = 71 tribal = 72 acid_punk = 73 acid_jazz = 74 polka = 75 retro = 76 musical = 77 rock_and_roll = 78 hard_rock = 79 // Winamp Extended Genres folk = 80 folk_rock = 81 national_folk = 82 swing = 83 fast_fusion = 84 bebob = 85 latin = 86 revival = 87 celtic = 88 bluegrass = 89 avantgarde = 90 gothic_rock = 91 progressive_rock = 92 psychedelic_rock = 93 symphonic_rock = 94 slow_rock = 95 big_band = 96 chorus = 97 easy_listening = 98 acoustic = 99 humour = 100 speech = 101 chanson = 102 opera = 103 chamber_music = 104 sonata = 105 symphony = 106 booty_bass = 107 primus = 108 porn_groove = 109 satire = 110 slow_jam = 111 club = 112 tango = 113 samba = 114 folklore = 115 ballad = 116 power_ballad = 117 rhythmic_soul = 118 freestyle = 119 duet = 120 punk_ballad = 121 drum_solo = 122 a_cappella = 123 euro_house = 124 dance_hall = 125 goa = 126 drum_and_bass = 127 club_house = 128 hardcore = 129 terror = 130 indie = 131 brit_pop = 132 negerpunk = 133 polsk_punk = 134 beat = 135 christian_gangsta = 136 heavy_metal = 137 black_metal = 138 crossover = 139 contemporary_c = 140 christian_rock = 141 merengue = 142 salsa = 143 thrash_metal = 144 anime = 145 jpop = 146 synthpop = 147 unknown = 255 } const genres_name = [ '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', // Winamp 'Folk', 'Folk-Rock', 'National Folk', 'Swing', 'Fast Fusion', 'Bebob', 'Latin', 'Revival', 'Celtic', 'Bluegrass', 'Avantgarde', 'Gothic Rock', 'Progressive Rock', 'Psychedelic Rock', 'Symphonic Rock', 'Slow Rock', 'Big Band', 'Chorus', 'Easy Listening', 'Acoustic', 'Humour', 'Speech', 'Chanson', 'Opera', 'Chamber Music', 'Sonata', 'Symphony', 'Booty Bass', 'Primus', 'Porn Groove', 'Satire', 'Slow Jam', 'Club', 'Tango', 'Samba', 'Folklore', 'Ballad', 'Power Ballad', 'Rhythmic Soul', 'Freestyle', 'Duet', 'Punk Ballad', 'Drum Solo', 'A Cappella', 'Euro-House', 'Dance Hall', 'Goa', 'Drum & Bass', 'Club-House', 'Hardcore', 'Terror', 'Indie', 'BritPop', 'Negerpunk', 'Polsk Punk', 'Beat', 'Christian Gangsta', 'Heavy Metal', 'Black Metal', 'Crossover', 'Contemporary Christian', 'Christian Rock', 'Merengue', 'Salsa', 'Thrash Metal', 'Anime', 'JPop', 'Synthpop', ] pub fn (genre Genre) str() string { match genre { .unknown { return 'Unknown' } else { return genres_name[u8(genre)] } } }