Only read ID3v1 tag if ID3v2 isn't present or is empty.
authorAnton Khirnov <wyskas@gmail.com>
Mon, 5 Oct 2009 21:36:56 +0000 (21:36 +0000)
committerCarl Eugen Hoyos <cehoyos@rainbow.studorg.tuwien.ac.at>
Mon, 5 Oct 2009 21:36:56 +0000 (21:36 +0000)
This prevents the demuxer from exporting multiple semantically identical but
differently named tags.

Patch by Anton Khirnov, wyskas gmail

Originally committed as revision 20175 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/mp3.c

index cad13cf..5b5e06d 100644 (file)
@@ -142,8 +142,9 @@ static int mp3_read_header(AVFormatContext *s,
     st->need_parsing = AVSTREAM_PARSE_FULL;
     st->start_time = 0;
 
-    ff_id3v1_read(s);
     ff_id3v2_read(s);
+    if (!av_metadata_get(s->metadata, "", NULL, AV_METADATA_IGNORE_SUFFIX))
+        ff_id3v1_read(s);
 
     off = url_ftell(s->pb);
     if (mp3_parse_vbr_tags(s, st, off) < 0)