Opened 10 years ago

Closed 7 years ago

#3799 closed defect (fixed)

non Vorbis comment tags in flac appear to be appended

Reported by: llogan Owned by:
Priority: important Component: avformat
Version: git-master Keywords: flac regression
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Regression since 0dc6655. Expected behavior is to not append non-Vorbis comment metadata.

Vorbis comment is the only officially supported tagging mechanism in FLAC[1]. FLAC files containing (at least) ID3v2 with Vorbis comments may cause multiple metadata values per metadata key to be displayed resulting in ugly metadata.

Silent sample id3v2_vorbiscomment.flac, apparently created with EAC[2] and containing ID3v2 with Vorbis comments, attached to this bug report.

$ ./ffmpeg -i id3v2_vorbiscomment.flac 
ffmpeg version N-64948-g8b59ab1 Copyright (c) 2000-2014 the FFmpeg developers
  built on Jul 23 2014 17:15:34 with gcc 4.9.1 (GCC)
  configuration: 
  libavutil      52. 92.101 / 52. 92.101
  libavcodec     55. 69.100 / 55. 69.100
  libavformat    55. 49.100 / 55. 49.100
  libavdevice    55. 13.102 / 55. 13.102
  libavfilter     4. 11.102 /  4. 11.102
  libswscale      2.  6.100 /  2.  6.100
  libswresample   0. 19.100 /  0. 19.100
Input #0, flac, from 'id3v2_vorbiscomment.flac':
  Metadata:
    TOTALTRACKS     : 14
    ALBUM           : Meteora;Meteora
    DATE            : 2003;2003
    encoded_by      : Exact Audio Copy   (Burst rezim)
    encoder         : FLAC.EXE -6 -V -T "ARTIST=Linkin Park" -T "TITLE=Numb" -T "ALBUM=Meteora" -T "DATE=2003" -T "TRACKNUMBER=13" -T "GENRE=Alternative Metal" -T "COMMENT=" -T "BAND=" -T "ALBUMARTIST=" -T "COMPOSER=" -T "DISCNUMBER=1" -T "TOTALDISCS=1" -T "TOTALTRACKS=14" -o
    ARTIST          : Linkin Park;Linkin Park
    TLEN            : 339520
    GENRE           : Alternative Metal;Alternative Metal
    disc            : 1
    TOTALDISCS      : 1
    TITLE           : Numb;Numb
    track           : 13
  Duration: 00:00:03.58, start: 0.000000, bitrate: 269 kb/s
    Stream #0:0: Audio: flac, 44100 Hz, stereo, s32
At least one output file must be specified
$ metaflac --list id3v2_vorbiscomment.flac 
METADATA block #0
  type: 0 (STREAMINFO)
  is last: false
  length: 34
  minimum blocksize: 4608 samples
  maximum blocksize: 4608 samples
  minimum framesize: 16 bytes
  maximum framesize: 4866 bytes
  sample_rate: 44100 Hz
  channels: 2
  bits-per-sample: 24
  total samples: 157696
  MD5 signature: 67289117105966398bcf8a9f7ed4077a
METADATA block #1
  type: 4 (VORBIS_COMMENT)
  is last: false
  length: 182
  vendor string: Lavf55.46.100
  comments: 9
    comment[0]: TOTALDISCS=1
    comment[1]: TOTALTRACKS=14
    comment[2]: Album=Meteora
    comment[3]: Artist=Linkin Park
    comment[4]: Genre=Alternative Metal
    comment[5]: Title=Numb
    comment[6]: DISCNUMBER=1
    comment[7]: DATE=2003
    comment[8]: TRACKNUMBER=13
METADATA block #2
  type: 1 (PADDING)
  is last: true
$ id3v2 -l id3v2_vorbiscomment.flac 
id3v1 tag info for id3v2_vorbiscomment.flac:
Title  : Numb                            Artist: Linkin Park                   
Album  : Meteora                         Year: 2003, Genre: Unknown (255)
Comment:                                 Track: 13
id3v2 tag info for id3v2_vorbiscomment.flac:
TALB (Album/Movie/Show title): Meteora
TPE1 (Lead performer(s)/Soloist(s)): Linkin Park
TPOS (Part of a set): 1/1
TENC (Encoded by): Exact Audio Copy   (Burst rezim)
TSSE (Software/Hardware and settings used for encoding): FLAC.EXE -6 -V -T "ARTIST=Linkin Park" -T "TITLE=Numb" -T "ALBUM=Meteora" -T "DATE=2003" -T "TRACKNUMBER=13" -T "GENRE=Alternative Metal" -T "COMMENT=" -T "BAND=" -T "ALBUMARTIST=" -T "COMPOSER=" -T "DISCNUMBER=1" -T "TOTALDISCS=1" -T "TOTALTRACKS=14" -o
TCON (Content type): Alternative Metal (255)
TLEN (Length): 339520
TIT2 (Title/songname/content description): Numb
TRCK (Track number/Position in set): 13/14
TYER (Year): 2003

[1] http://xiph.org/flac/format.html#format_overview
[2] http://ffmpeg.zeranoe.com/forum/viewtopic.php?f=7&t=2072

Attachments (1)

id3v2_vorbiscomment.flac (117.6 KB ) - added by llogan 10 years ago.
ticket 3799: flac with id3v2 and vorbis comment

Download all attachments as: .zip

Change History (5)

by llogan, 10 years ago

Attachment: id3v2_vorbiscomment.flac added

ticket 3799: flac with id3v2 and vorbis comment

comment:1 by Michael Niedermayer, 10 years ago

ive notified Ben Boeckel (the author of the commit)

Also offtopic, but dont hesitate to alway ping authors of commits causing regerssions

comment:2 by Ben Boeckel, 10 years ago

It's actually the Vorbis tags being appended here (I guess ID3 tags are first in the file; if they're second, they should be the only ones). When encountering a metadata block, should Vorbis clear the metadata map before reading it (easiest solution, but breaks if metadata comes in separate blocks (bad))? Should FLAC decoding just ignore ID3 tags (adhering to the spec)? If not, what about only when vorbis tags exist (to follow the spec, but allow non-conforming files)?

in reply to:  2 comment:3 by llogan, 10 years ago

My preference is to see it adhering to the spec with a warning indicating that if there is non-Vorbis comment metadata present they will be ignored.

comment:4 by llogan, 7 years ago

Resolution: fixed
Status: newclosed

Fixed by Paul Arzelier with 65862f57ad2f7f49d715f334a9d892e0b20d42f1.

Note: See TracTickets for help on using tickets.