]> rtime.felk.cvut.cz Git - frescor/ffmpeg.git/commitdiff
Handle WavPack INT32INFO chunks with nonzero post shift
authorkostya <kostya@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Thu, 23 Apr 2009 18:21:16 +0000 (18:21 +0000)
committerkostya <kostya@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Thu, 23 Apr 2009 18:21:16 +0000 (18:21 +0000)
git-svn-id: file:///var/local/repositories/ffmpeg/trunk@18668 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b

libavcodec/wavpack.c

index 4a7a9e5c6b2f8676da7fe139881de1c46a81461e..e0db0168aae1296f860368be334337e0c230388f 100644 (file)
@@ -780,12 +780,14 @@ static int wavpack_decode_frame(AVCodecContext *avctx,
             got_hybrid = 1;
             break;
         case WP_ID_INT32INFO:
-            if(size != 4 || *buf){
+            if(size != 4){
                 av_log(avctx, AV_LOG_ERROR, "Invalid INT32INFO, size = %i, sent_bits = %i\n", size, *buf);
                 buf += ssize;
                 continue;
             }
-            if(buf[1])
+            if(buf[0])
+                s->post_shift = buf[0];
+            else if(buf[1])
                 s->shift = buf[1];
             else if(buf[2]){
                 s->and = s->or = 1;