[FFmpeg-cvslog] lavf/amr: Fix heuristic to avoid detection of repeated bytes.

Carl Eugen Hoyos git at videolan.org
Wed Jun 27 00:05:07 EEST 2018


ffmpeg | branch: master | Carl Eugen Hoyos <ceffmpeg at gmail.com> | Mon Jun 25 23:20:09 2018 +0200| [7becc70375deed5e6c3e812f6717af7ef5ad93f5] | committer: Carl Eugen Hoyos

lavf/amr: Fix heuristic to avoid detection of repeated bytes.

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

 libavformat/amr.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/libavformat/amr.c b/libavformat/amr.c
index 6cc06bceac..de347058f3 100644
--- a/libavformat/amr.c
+++ b/libavformat/amr.c
@@ -184,12 +184,11 @@ static int amrnb_probe(AVProbeData *p)
     while (i < p->buf_size) {
         mode = b[i] >> 3 & 0x0F;
         if (mode < 9 && (b[i] & 0x4) == 0x4) {
-            int last = mode;
+            int last = b[i];
             int size = amrnb_packed_size[mode];
             while (size--) {
                 if (b[++i] != last)
                     break;
-                last = b[i];
             }
             if (size > 0) {
                 valid++;
@@ -241,12 +240,11 @@ static int amrwb_probe(AVProbeData *p)
     while (i < p->buf_size) {
         mode = b[i] >> 3 & 0x0F;
         if (mode < 10 && (b[i] & 0x4) == 0x4) {
-            int last = mode;
+            int last = b[i];
             int size = amrwb_packed_size[mode];
             while (size--) {
                 if (b[++i] != last)
                     break;
-                last = b[i];
             }
             if (size > 0) {
                 valid++;



More information about the ffmpeg-cvslog mailing list