[FFmpeg-trac] #6949(undetermined:new): No support for multiple values in ID3v2.4 tags.
FFmpeg
trac at avcodec.org
Sun Jan 7 04:41:02 EET 2018
#6949: No support for multiple values in ID3v2.4 tags.
-------------------------------------+-------------------------------------
Reporter: | Type: defect
escapereality | Priority: normal
Status: new | Version:
Component: | unspecified
undetermined | Blocked By:
Keywords: ID3 FFprobe | Reproduced by developer: 0
libavformat |
Blocking: |
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Altough ''FFmpeg'' states that it has support for ID3v2.4 tags, there is
one thing I can't get to work properly.
The [http://id3.org/id3v2.4.0-frames 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.''
When I separate the values in a tag with NULL-characters, the values
should all be recognized (following the ID3v2.4 specs). However, when I
use ''FFprobe'', it only shows the first value. For example
[http://mutagen.readthedocs.io/en/latest/man/mid3v2.html mid3v2] shows the
tags correctly.
[[BR]]
Below is (a snippet of) the output of both ''mid3v2'' and ''FFprobe'' with
an example file. The '''TCON''' (genre) and '''TPE1''' (artist) contain
multiple values.
''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 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
}}}
----
'''Verbose console output FFprobe'''
{{{
ffprobe started on 2018-01-07 at 03:20:14
Report written to "ffprobe-20180107-032014.log"
Command line:
ffprobe -report "01_Infinite_(Original_Mix).mp3"
ffprobe version 3.4.1 Copyright (c) 2007-2017 the FFmpeg developers
built with gcc 7.2.1 (GCC) 20171128
configuration: --prefix=/usr --disable-debug --disable-static --disable-
stripping --enable-avisynth --enable-avresample --enable-fontconfig
--enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libass
--enable-libbluray --enable-libfreetype --enable-libfribidi --enable-
libgsm --enable-libiec61883 --enable-libmodplug --enable-libmp3lame
--enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg
--enable-libopus --enable-libpulse --enable-libsoxr --enable-libspeex
--enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab
--enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264
--enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid
--enable-shared --enable-version3
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100
[NULL @ 0x55a2b5dcdb20] Opening '01_Infinite_(Original_Mix).mp3' for
reading
[file @ 0x55a2b5dce520] Setting default whitelist 'file,crypto'
[mp3 @ 0x55a2b5dcdb20] Format mp3 probed with size=131072 and score=51
id3v2 ver:4 flags:00 len:108428
[mp3 @ 0x55a2b5dcdb20] pad 576 1211
[mp3 @ 0x55a2b5dcdb20] Skipping 0 bytes of junk at 109482.
[mp3 @ 0x55a2b5dcdb20] Before avformat_find_stream_info() pos: 109482
bytes read:131072 seeks:0 nb_streams:2
[mjpeg @ 0x55a2b5dd2480] marker=d8 avail_size_in_buf=94699
[mjpeg @ 0x55a2b5dd2480] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x55a2b5dd2480] marker=e0 avail_size_in_buf=94697
[mjpeg @ 0x55a2b5dd2480] marker parser used 16 bytes (128 bits)
[mjpeg @ 0x55a2b5dd2480] marker=db avail_size_in_buf=94679
[mjpeg @ 0x55a2b5dd2480] index=0
[mjpeg @ 0x55a2b5dd2480] qscale[0]: 0
[mjpeg @ 0x55a2b5dd2480] marker parser used 67 bytes (536 bits)
[mjpeg @ 0x55a2b5dd2480] marker=db avail_size_in_buf=94610
[mjpeg @ 0x55a2b5dd2480] index=1
[mjpeg @ 0x55a2b5dd2480] qscale[1]: 1
[mjpeg @ 0x55a2b5dd2480] marker parser used 67 bytes (536 bits)
[mjpeg @ 0x55a2b5dd2480] marker=c0 avail_size_in_buf=94541
[mjpeg @ 0x55a2b5dd2480] Changing bps from 0 to 8
[mjpeg @ 0x55a2b5dd2480] sof0: picture: 600x600
[mjpeg @ 0x55a2b5dd2480] component 0 2:2 id: 0 quant:0
[mjpeg @ 0x55a2b5dd2480] component 1 1:1 id: 1 quant:1
[mjpeg @ 0x55a2b5dd2480] component 2 1:1 id: 2 quant:1
[mjpeg @ 0x55a2b5dd2480] pix fmt id 22111100
[mjpeg @ 0x55a2b5dd2480] marker parser used 17 bytes (136 bits)
[mjpeg @ 0x55a2b5dd2480] marker=c4 avail_size_in_buf=94522
[mjpeg @ 0x55a2b5dd2480] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x55a2b5dd2480] marker=c4 avail_size_in_buf=94489
[mjpeg @ 0x55a2b5dd2480] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x55a2b5dd2480] marker=c4 avail_size_in_buf=94397
[mjpeg @ 0x55a2b5dd2480] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x55a2b5dd2480] marker=c4 avail_size_in_buf=94367
[mjpeg @ 0x55a2b5dd2480] marker parser used 0 bytes (0 bits)
[mjpeg @ 0x55a2b5dd2480] escaping removed 318 bytes
[mjpeg @ 0x55a2b5dd2480] marker=da avail_size_in_buf=94314
[mjpeg @ 0x55a2b5dd2480] marker parser used 93996 bytes (751968 bits)
[mjpeg @ 0x55a2b5dd2480] marker=d9 avail_size_in_buf=0
[mjpeg @ 0x55a2b5dd2480] decode frame unused 0 bytes
[mp3 @ 0x55a2b5dcdb20] demuxer injecting skip 1105 / discard 0
[mp3 @ 0x55a2b5dd1620] skip 1105 / discard 0 samples due to side data
[mp3 @ 0x55a2b5dd1620] skip 1105/1152 samples
[mp3 @ 0x55a2b5dcdb20] All info found
[mp3 @ 0x55a2b5dcdb20] After avformat_find_stream_info() pos: 162730 bytes
read:163840 seeks:0 frames:51
Input #0, mp3, from '01_Infinite_(Original_Mix).mp3':
Metadata:
title : Infinite (Original Mix)
artist : B-Front
track : 1
album : Infinite
date : 2017
genre : Hardstyle
compilation : 0
TBPM : 150
album_artist : B-Front
publisher : Roughstate
R128_ALBUM_GAIN : 0
R128_TRACK_GAIN : 0
CATALOGNUMBER : ROUGH082
REPLAYGAIN_ALBUM_PEAK: 1.000000
REPLAYGAIN_TRACK_PEAK: 1.000000
REPLAYGAIN_ALBUM_GAIN: -13.24 dB
REPLAYGAIN_TRACK_GAIN: -13.24 dB
iTunNORM : 0000525E 0000525E 0000CDEC 0000CDEC 00000000
00000000 00008000 00008000 00000000 00000000
Duration: 00:05:00.64, start: 0.025056, bitrate: 322 kb/s
Stream #0:0, 50, 1/14112000: Audio: mp3, 44100 Hz, stereo, s16p, 320
kb/s
Metadata:
encoder : Lavf
Side data:
replaygain: track gain - -13.240000, track peak - 0.000023, album
gain - -13.240000, album peak - 0.000023,
Stream #0:1, 1, 1/90000: Video: mjpeg, yuvj420p(pc,
bt470bg/unknown/unknown), 600x600 [SAR 1:1 DAR 1:1], 90k tbr, 90k tbn, 90k
tbc
Metadata:
comment : Cover (front)
[AVIOContext @ 0x55a2b5dd6900] Statistics: 163840 bytes read, 0 seeks
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/6949>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list