avformat/mp3dec: improve detection of mp3s with huge id3 tags
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 25 Aug 2013 22:57:35 +0000 (00:57 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 25 Aug 2013 22:57:35 +0000 (00:57 +0200)
When a id3 tag is larger than the amount of space we will probe
give it a score similar to what a .mp3 extension would have given it

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/mp3dec.c

index 472bad9..74b76e2 100644 (file)
@@ -85,7 +85,7 @@ static int mp3_read_probe(AVProbeData *p)
     else if(max_frames>200)return AVPROBE_SCORE_EXTENSION;
     else if(max_frames>=4) return AVPROBE_SCORE_EXTENSION / 2;
     else if(ff_id3v2_match(buf0, ID3v2_DEFAULT_MAGIC) && 2*ff_id3v2_tag_len(buf0) >= p->buf_size)
-                           return AVPROBE_SCORE_EXTENSION / 4;
+                           return p->buf_size < PROBE_BUF_MAX ? AVPROBE_SCORE_EXTENSION / 4 : AVPROBE_SCORE_EXTENSION - 2;
     else if(max_frames>=1) return 1;
     else                   return 0;
 //mpegps_mp3_unrecognized_format.mpg has max_frames=3