aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2010-05-30 22:29:48 +0200
committerMax Kellermann <max@duempel.org>2010-05-30 22:29:48 +0200
commit8e815bec9f2c3e2b088bd9652edeb351541763f1 (patch)
treee7eee6e2af85e67a0b01333e90b65c13d325fc07
parent9dda53e1d20ed70b31d8651ad9036f52b1d17360 (diff)
downloadmpd-8e815bec9f2c3e2b088bd9652edeb351541763f1.tar.gz
mpd-8e815bec9f2c3e2b088bd9652edeb351541763f1.tar.xz
mpd-8e815bec9f2c3e2b088bd9652edeb351541763f1.zip
tag_ape: support album artist, MusicBrainz tags
I took these tag names from a MusePack sample file I got from a user. These are not documented in the APE specification: http://wiki.hydrogenaudio.org/index.php?title=APE_key People seem to be using undocumented extensions to the specification anyway, and the best we can do is attempt to support them.
-rw-r--r--NEWS1
-rw-r--r--src/tag_ape.c9
2 files changed, 9 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 173f963e7..ae35b2057 100644
--- a/NEWS
+++ b/NEWS
@@ -20,6 +20,7 @@ ver 0.16 (20??/??/??)
* tags:
- added tags "ArtistSort", "AlbumArtistSort"
- id3: revised "performer" tag support
+ - ape: support album artist, MusicBrainz tags
* decoders:
- don't try a plugin twice (MIME type & suffix)
- don't fall back to "mad" unless no plugin matches
diff --git a/src/tag_ape.c b/src/tag_ape.c
index 9a07c3ac9..e8d396037 100644
--- a/src/tag_ape.c
+++ b/src/tag_ape.c
@@ -29,11 +29,18 @@
static const char *const ape_tag_names[] = {
[TAG_TITLE] = "title",
[TAG_ARTIST] = "artist",
+ [TAG_ARTIST_SORT] = "artistsort",
[TAG_ALBUM] = "album",
+ [TAG_ALBUM_ARTIST] = "album artist",
+ [TAG_ALBUM_ARTIST_SORT] = "albumartistsort",
[TAG_COMMENT] = "comment",
[TAG_GENRE] = "genre",
[TAG_TRACK] = "track",
- [TAG_DATE] = "year"
+ [TAG_DATE] = "year",
+ [TAG_MUSICBRAINZ_ARTISTID] = "musicbrainz_artistid",
+ [TAG_MUSICBRAINZ_ALBUMID] = "musicbrainz_albumid",
+ [TAG_MUSICBRAINZ_ALBUMARTISTID] = "musicbrainz_albumartistid",
+ [TAG_MUSICBRAINZ_TRACKID] = "musicbrainz_trackid",
};
static struct tag *