From 04ff8bf492ab16df6a6a4faffd8d55158ef9eec5 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Mon, 29 Jan 2024 19:11:10 +1100 Subject: Extract album artist from libtags-processed files --- lib/libtags/id3v2.c | 4 +++- lib/libtags/tags.h | 1 + lib/libtags/vorbis.c | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/libtags/id3v2.c b/lib/libtags/id3v2.c index f5784c20..e1529d4a 100644 --- a/lib/libtags/id3v2.c +++ b/lib/libtags/id3v2.c @@ -19,8 +19,10 @@ v2cb(Tagctx *ctx, char *k, char *v) k++; if(strcmp(k, "AL") == 0 || strcmp(k, "ALB") == 0) txtcb(ctx, Talbum, k-1, v); - else if(strcmp(k, "PE1") == 0 || strcmp(k, "PE2") == 0 || strcmp(k, "P1") == 0 || strcmp(k, "P2") == 0) + else if(strcmp(k, "PE1") == 0 || strcmp(k, "P1") == 0) txtcb(ctx, Tartist, k-1, v); + else if(strcmp(k, "PE2") == 0 || strcmp(k, "P2") == 0) + txtcb(ctx, Talbumartist, k-1, v); else if(strcmp(k, "IT2") == 0 || strcmp(k, "T2") == 0) txtcb(ctx, Ttitle, k-1, v); else if(strcmp(k, "YE") == 0 || strcmp(k, "YER") == 0 || strcmp(k, "DRC") == 0) diff --git a/lib/libtags/tags.h b/lib/libtags/tags.h index c53d239e..91045218 100644 --- a/lib/libtags/tags.h +++ b/lib/libtags/tags.h @@ -10,6 +10,7 @@ enum { Tunknown = -1, Tartist, + Talbumartist, Talbum, Ttitle, Tdate, /* "2014", "2015/02/01", but the year goes first */ diff --git a/lib/libtags/vorbis.c b/lib/libtags/vorbis.c index 0c659da5..c98a0e4e 100644 --- a/lib/libtags/vorbis.c +++ b/lib/libtags/vorbis.c @@ -14,6 +14,8 @@ cbvorbiscomment(Tagctx *ctx, char *k, char *v){ txtcb(ctx, Ttitle, k, v); else if(cistrcmp(k, "artist") == 0) txtcb(ctx, Tartist, k, v); + else if(cistrcmp(k, "albumartist") == 0) + txtcb(ctx, Talbumartist, k, v); else if(cistrcmp(k, "tracknumber") == 0) txtcb(ctx, Ttrack, k, v); else if(cistrcmp(k, "date") == 0) -- cgit v1.2.3