diff mbox series

[FFmpeg-devel] avformat/id3v2: Add Grouping frame to id3v2.4 metadata table

Message ID 20220213134633.52291-1-wolf@oriole.systems
State Accepted
Commit a67734596dca097584965916e0ba90e81af3163c
Headers show
Series [FFmpeg-devel] avformat/id3v2: Add Grouping frame to id3v2.4 metadata table | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_ppc success Make finished
andriy/make_fate_ppc success Make fate finished
andriy/make_aarch64_jetson success Make finished
andriy/make_fate_aarch64_jetson success Make fate finished
andriy/make_armv7_RPi4 success Make finished
andriy/make_fate_armv7_RPi4 success Make fate finished

Commit Message

Wolfgang Müller Feb. 13, 2022, 1:46 p.m. UTC
The ID3v2.4.0 standard defines TIT1 as the "Content group description"
tag [1]. This frame is usually referred to as the "Grouping" tag and in
de-facto use under that name by Vorbis and APEv2 [2].

This commit introduces a mapping from "TIT1" to "grouping" in the
id3v2.4 metadata conversion table. This will enable software to access
it using that name. In particular, MPD will now read this tag correctly
when using the ffmpeg decoder plugin.

[1] https://id3.org/id3v2.4.0-frames (4.2.1)
[2] https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#grouping-3

Signed-off-by: Wolfgang Müller <wolf@oriole.systems>
---

As evident from the commit message, I ran into this using MPD with the
ffmpeg decoder plugin. MPD relies on these mappings heavily, and I found
it the easiest place to fix this particular issue, especially if other
pieces of software can also gain from this.

 libavformat/id3v2.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Anton Khirnov Feb. 14, 2022, 4:18 p.m. UTC | #1
Quoting Wolfgang Müller (2022-02-13 14:46:33)
> The ID3v2.4.0 standard defines TIT1 as the "Content group description"
> tag [1]. This frame is usually referred to as the "Grouping" tag and in
> de-facto use under that name by Vorbis and APEv2 [2].
> 
> This commit introduces a mapping from "TIT1" to "grouping" in the
> id3v2.4 metadata conversion table. This will enable software to access
> it using that name. In particular, MPD will now read this tag correctly
> when using the ffmpeg decoder plugin.
> 
> [1] https://id3.org/id3v2.4.0-frames (4.2.1)
> [2] https://picard-docs.musicbrainz.org/en/appendices/tag_mapping.html#grouping-3
> 
> Signed-off-by: Wolfgang Müller <wolf@oriole.systems>
> ---
> 
> As evident from the commit message, I ran into this using MPD with the
> ffmpeg decoder plugin. MPD relies on these mappings heavily, and I found
> it the easiest place to fix this particular issue, especially if other
> pieces of software can also gain from this.
> 
>  libavformat/id3v2.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c
> index ff27c062e5..0f9bedea02 100644
> --- a/libavformat/id3v2.c
> +++ b/libavformat/id3v2.c
> @@ -69,6 +69,7 @@ const AVMetadataConv ff_id3v2_4_metadata_conv[] = {
>      { "TSOA", "album-sort"    },
>      { "TSOP", "artist-sort"   },
>      { "TSOT", "title-sort"    },
> +    { "TIT1", "grouping"      },
>      { 0 }
>  };
>  
> -- 
> 2.35.1

Looks ok, will push tomorrow
diff mbox series

Patch

diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c
index ff27c062e5..0f9bedea02 100644
--- a/libavformat/id3v2.c
+++ b/libavformat/id3v2.c
@@ -69,6 +69,7 @@  const AVMetadataConv ff_id3v2_4_metadata_conv[] = {
     { "TSOA", "album-sort"    },
     { "TSOP", "artist-sort"   },
     { "TSOT", "title-sort"    },
+    { "TIT1", "grouping"      },
     { 0 }
 };