Is FFmpeg able to read multiple values in an ID3v2.4 tag?

2

1

Altough FFmpeg states that it has support for ID3v2.4 tags, there is one thing I can't get to work properly. The ID3v2.4 specifications state the following:

There may only be one text information frame of its kind in an tag. All text information frames supports multiple strings, stored as a null separated list, where null is represented by the termination code for the character encoding.

However, when I use FFprobe, it only shows the first value. For example mid3v2 shows the tags correctly. See below for both the outputs.

mid3v2:

mid3v2 --list 01_Infinite_\(Original_Mix\).mp3
IDv2 tag info for 01_Infinite_(Original_Mix).mp3
TALB=Infinite
TBPM=150
TCON=Hardstyle / Test / Example / Hard Dance
TDRC=2017
TIT2=Infinite (Original Mix)
TPE1=B-Front / Second Artist Example
TPE2=B-Front
TPUB=Roughstate

FFmpeg:

ffprobe -hide_banner 01_Infinite_\(Original_Mix\).mp3
Input #0, mp3, from '01_Infinite_(Original_Mix).mp3':
  Metadata:
    title           : Infinite (Original Mix)
    artist          : B-Front
    album           : Infinite
    date            : 2017
    genre           : Hardstyle
    TBPM            : 150
    album_artist    : B-Front
    publisher       : Roughstate

The TCON (Genre) and TPE1 (Artist) fields have multiple values, seperated by a NULL-character. FFmpeg doesn't show more than one field.

Am I overlooking something, or is this just not implemented in FFmpeg/libavformat?

Thanks in advance!

Nicola Hinssen

Posted 2018-01-05T14:15:26.837

Reputation: 21

AFAIK these are ID3v2.3 tags, not ID3v1. ID3v1 is completely different. – Nicola Hinssen – 2018-01-05T21:36:11.673

Possibly, but the MP3 demuxer does not use the v2 parser to dump them. – Gyan – 2018-01-06T05:55:02.017

Strike the above. ffmpeg only dumps id3v2. I'll look into this later. – Gyan – 2018-01-06T08:31:48.007

Answers

0

No. Although ttags in ID3 v2.4 support multiple strings, the ID3v2 parser terminates string extraction when it hits NULL, instead of consuming the full tag length.

Submit a bug report at https://trac.ffmpeg.org.

Gyan

Posted 2018-01-05T14:15:26.837

Reputation: 21 016

Allright, submitted a bug report. https://trac.ffmpeg.org/ticket/6949

– Nicola Hinssen – 2018-01-07T10:39:50.517

Attach a sample file there which has text tag with multiple strings. – Gyan – 2018-01-07T10:46:31.503

Done, sample file attached. – Nicola Hinssen – 2018-01-07T18:34:46.883