mpegdemux: Fix probing of unrecognized_mpeg_video.mpg
authorMichael Niedermayer <michaelni@gmx.at>
Tue, 31 Jul 2012 01:59:29 +0000 (03:59 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Tue, 31 Jul 2012 01:59:29 +0000 (03:59 +0200)
Fixes Ticket1586

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

index ec04022..3183f87 100644 (file)
@@ -87,7 +87,7 @@ static int mpegps_probe(AVProbeData *p)
 
 //av_log(NULL, AV_LOG_ERROR, "%d %d %d %d %d %d len:%d\n", sys, priv1, pspack,vid, audio, invalid, p->buf_size);
     if(sys>invalid && sys*9 <= pspack*10)
-        return pspack > 2 ? AVPROBE_SCORE_MAX/2+2 : AVPROBE_SCORE_MAX/4; // +1 for .mpg
+        return (audio > 12 || vid > 3 || pspack > 2) ? AVPROBE_SCORE_MAX/2+2 : AVPROBE_SCORE_MAX/4; // +1 for .mpg
     if(pspack > invalid && (priv1+vid+audio)*10 >= pspack*9)
         return pspack > 2 ? AVPROBE_SCORE_MAX/2+2 : AVPROBE_SCORE_MAX/4; // +1 for .mpg
     if((!!vid ^ !!audio) && (audio > 4 || vid > 1) && !sys && !pspack && p->buf_size>2048 && vid + audio > invalid) /* PES stream */