[FFmpeg-cvslog] Do not detect "00000000..." (and other non-changing values) as adp.

Carl Eugen Hoyos git at videolan.org
Mon Dec 9 20:51:00 CET 2013


ffmpeg | branch: master | Carl Eugen Hoyos <cehoyos at ag.or.at> | Mon Dec  9 13:51:00 2013 +0100| [c5a837658acd3e65029e6c8b52dd6cdffdb608b0] | committer: Carl Eugen Hoyos

Do not detect "00000000..." (and other non-changing values) as adp.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c5a837658acd3e65029e6c8b52dd6cdffdb608b0
---

 libavformat/adp.c |   11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/libavformat/adp.c b/libavformat/adp.c
index c5feac4..08a4225 100644
--- a/libavformat/adp.c
+++ b/libavformat/adp.c
@@ -26,14 +26,21 @@
 
 static int adp_probe(AVProbeData *p)
 {
-    int i;
+    int i, changes = 0;
+    char last = 0;
 
     if (p->buf_size < 32)
         return 0;
 
-    for (i = 0; i < p->buf_size - 3; i+=32)
+    for (i = 0; i < p->buf_size - 3; i+=32) {
         if (p->buf[i] != p->buf[i+2] || p->buf[i+1] != p->buf[i+3])
             return 0;
+        if (p->buf[i] != last)
+            changes++;
+        last = p->buf[i];
+    }
+    if (changes <= 1)
+        return 0;
 
     return p->buf_size < 260 ? 1 : AVPROBE_SCORE_MAX / 4;
 }



More information about the ffmpeg-cvslog mailing list