summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2025-01-29 16:04:31 +1100
committerjacqueline <me@jacqueline.id.au>2025-01-29 16:05:56 +1100
commitddcd06dbca61fc55a7c2cd68f82f8cfe7b4c5cbf (patch)
tree48787be732c38b4dddb158f2a351415291001dbc /lib
parentf9011839cd0b0b7f2b45e4231500cc267245912b (diff)
downloadtangara-fw-ddcd06dbca61fc55a7c2cd68f82f8cfe7b4c5cbf.tar.gz
Add 'Tdisc' to libtags
Uses 'TPOS' for id3v2 tags, and 'DISCNUMBER' for vorbis comments (mostly just relevant to flacs for our use case). Fixes #181.
Diffstat (limited to 'lib')
-rw-r--r--lib/libtags/id3v2.c2
-rw-r--r--lib/libtags/tags.h1
-rw-r--r--lib/libtags/vorbis.c1
3 files changed, 4 insertions, 0 deletions
diff --git a/lib/libtags/id3v2.c b/lib/libtags/id3v2.c
index 0e8ddb11..eced01f8 100644
--- a/lib/libtags/id3v2.c
+++ b/lib/libtags/id3v2.c
@@ -68,6 +68,8 @@ v2cb(Tagctx *ctx, char *k, char *v)
return 0;
}else if(strcmp(k-1, "COM") == 0 || strcmp(k-1, "COMM") == 0){
txtcb(ctx, Tcomment, k-1, v);
+ }else if(strcmp(k, "POS") == 0){
+ txtcb(ctx, Tdisc, k-1, v);
}else if(strcmp(k, "XXX") == 0){
k = v;
v += strlen(v) + 1;
diff --git a/lib/libtags/tags.h b/lib/libtags/tags.h
index d9da6c2e..b2aa2dfb 100644
--- a/lib/libtags/tags.h
+++ b/lib/libtags/tags.h
@@ -16,6 +16,7 @@ enum
Ttitle,
Tdate, /* "2014", "2015/02/01", but the year goes first */
Ttrack, /* "1", "01", "1/4", but the track number goes first */
+ Tdisc,
Talbumgain,
Talbumpeak,
Ttrackgain,
diff --git a/lib/libtags/vorbis.c b/lib/libtags/vorbis.c
index bea70aaf..d6219a24 100644
--- a/lib/libtags/vorbis.c
+++ b/lib/libtags/vorbis.c
@@ -14,6 +14,7 @@ static const struct {
{"artists", Tmultiartists},
{"albumartist", Talbumartist},
{"tracknumber", Ttrack},
+ {"discnumber", Tdisc},
{"date", Tdate},
{"replaygain_track_peak", Ttrackpeak},
{"replaygain_track_gain", Ttrackgain},