From 6e0f746d3eac0b07b9f5e4216d45ad70ca17fe62 Mon Sep 17 00:00:00 2001 From: Kostya Shishkov Date: Thu, 23 Apr 2009 18:21:16 +0000 Subject: Handle WavPack INT32INFO chunks with nonzero post shift Originally committed as revision 18668 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/wavpack.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'libavcodec/wavpack.c') diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c index 4a7a9e5c6b..e0db0168aa 100644 --- a/libavcodec/wavpack.c +++ b/libavcodec/wavpack.c @@ -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; -- cgit v1.2.3