Implement ArtistSort tag

This commit is contained in:
Bart Nagel 2009-07-09 13:28:08 +01:00 committed by Max Kellermann
parent 1eebbc746f
commit 8ae9b45da0
4 changed files with 10 additions and 2 deletions

2
NEWS
View File

@ -4,7 +4,7 @@ ver 0.16 (20??/??/??)
- added "update" idle event
- removed the deprecated "volume" command
* tags:
- added tag "AlbumArtistSort"
- added tags "ArtistSort", "AlbumArtistSort"
- id3: revised "performer" tag support
* decoders:
- ffmpeg: support multiple tags

View File

@ -43,6 +43,7 @@ static struct {
const char *tag_item_names[TAG_NUM_OF_ITEM_TYPES] = {
"Artist",
[TAG_ARTIST_SORT] = "ArtistSort",
"Album",
"AlbumArtist",
[TAG_ALBUM_ARTIST_SORT] = "AlbumArtistSort",

View File

@ -32,6 +32,7 @@
*/
enum tag_type {
TAG_ITEM_ARTIST,
TAG_ARTIST_SORT,
TAG_ITEM_ALBUM,
TAG_ITEM_ALBUM_ARTIST,
TAG_ALBUM_ARTIST_SORT,

View File

@ -42,8 +42,12 @@
# define ID3_FRAME_DISC "TPOS"
# endif
#ifndef ID3_FRAME_ARTIST_SORT
#define ID3_FRAME_ARTIST_SORT "TSOP"
#endif
#ifndef ID3_FRAME_ALBUM_ARTIST_SORT
#define ID3_FRAME_ALBUM_ARTIST_SORT "TSO2"
#define ID3_FRAME_ALBUM_ARTIST_SORT "TSO2" /* this one is unofficial, introduced by Itunes */
#endif
#ifndef ID3_FRAME_ALBUM_ARTIST
@ -329,6 +333,8 @@ struct tag *tag_id3_import(struct id3_tag * tag)
getID3Info(tag, ID3_FRAME_ARTIST, TAG_ITEM_ARTIST, ret);
getID3Info(tag, ID3_FRAME_ALBUM_ARTIST,
TAG_ITEM_ALBUM_ARTIST, ret);
getID3Info(tag, ID3_FRAME_ARTIST_SORT,
TAG_ARTIST_SORT, ret);
getID3Info(tag, ID3_FRAME_ALBUM_ARTIST_SORT,
TAG_ALBUM_ARTIST_SORT, ret);
getID3Info(tag, ID3_FRAME_TITLE, TAG_ITEM_TITLE, ret);