OSDN Git Service

additional tweaks to AC3 probe function. give a higher score to a single frame
authorJustin Ruggles <justin.ruggles@gmail.com>
Sun, 5 Aug 2007 00:32:19 +0000 (00:32 +0000)
committerJustin Ruggles <justin.ruggles@gmail.com>
Sun, 5 Aug 2007 00:32:19 +0000 (00:32 +0000)
at the start of the stream. also read all available data in the probe buffer.

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

libavformat/raw.c

index c1ccb62..ffd8a43 100644 (file)
@@ -419,7 +419,7 @@ static int ac3_probe(AVProbeData *p)
 
     max_frames = 0;
     buf = p->buf;
-    end = buf + FFMIN(5120, p->buf_size - 7);
+    end = buf + p->buf_size;
 
     for(; buf < end; buf++) {
         buf2 = buf;
@@ -434,7 +434,7 @@ static int ac3_probe(AVProbeData *p)
             first_frames = frames;
     }
     if   (first_frames>=3) return AVPROBE_SCORE_MAX * 3 / 4;
-    else if(max_frames>=2) return AVPROBE_SCORE_MAX / 2;
+    else if(max_frames>=2 || first_frames>=1) return AVPROBE_SCORE_MAX / 2;
     else if(max_frames>=1) return 1;
     else                   return 0;
 }