summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
authorBjörn Stenberg <bjorn@haxx.se>2004-05-22 01:38:41 +0000
committerBjörn Stenberg <bjorn@haxx.se>2004-05-22 01:38:41 +0000
commitbdaf5884caa72457fd2602ea7a1f220d3bd18298 (patch)
tree53ac59923918941119a4e3f8927aef08872ec4b3 /firmware
parent1c6ba0adacf88f23ef81961ffcc7db14d6428159 (diff)
Moved genre list and access function to id3.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4692 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/export/id3.h1
-rw-r--r--firmware/id3.c36
2 files changed, 37 insertions, 0 deletions
diff --git a/firmware/export/id3.h b/firmware/export/id3.h
index 48a56f231a..6e53e4c66c 100644
--- a/firmware/export/id3.h
+++ b/firmware/export/id3.h
@@ -75,5 +75,6 @@ enum {
};
bool mp3info(struct mp3entry *entry, char *filename);
+char* id3_get_genre(struct mp3entry* id3);
#endif
diff --git a/firmware/id3.c b/firmware/id3.c
index 131eeda82a..d2d2a2d9fe 100644
--- a/firmware/id3.c
+++ b/firmware/id3.c
@@ -51,6 +51,42 @@
((b2 & 0xFF) << (1*8)) | \
((b3 & 0xFF) << (0*8)))
+static const char* const genres[] = {
+ "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 extensions */
+ "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 Rock", "Drum Solo", "A capella", "Euro-House", "Dance Hall"
+};
+
+char* id3_get_genre(struct mp3entry* id3)
+{
+ if( id3->genre_string )
+ return id3->genre_string ;
+
+ if (id3->genre < sizeof(genres)/sizeof(char*))
+ return (char*)genres[id3->genre];
+ return NULL;
+}
+
/*
HOW TO ADD ADDITIONAL ID3 VERSION 2 TAGS
Code and comments by Thomas Paul Diffenbach