[FFmpeg-cvslog] vmdaudio: fix raw_block_size calculation.

Justin Ruggles git
Sat Feb 26 04:51:52 CET 2011


ffmpeg | branch: master | Justin Ruggles <justin.ruggles at gmail.com> | Wed Feb 23 13:10:58 2011 -0500| [994e445a17303abcc87b487e4abea54e505fe618] | committer: Michael Niedermayer

vmdaudio: fix raw_block_size calculation.

The size should depend on the output sample size, not the internal bit depth.

Signed-off-by: Ronald S. Bultje <rsbultje at gmail.com>
(cherry picked from commit a58bcb40b164b92957db73e702465808a9180126)

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

 libavcodec/vmdav.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/libavcodec/vmdav.c b/libavcodec/vmdav.c
index e396c0b..c7f99db 100644
--- a/libavcodec/vmdav.c
+++ b/libavcodec/vmdav.c
@@ -539,7 +539,8 @@ static int vmdaudio_decode_frame(AVCodecContext *avctx,
     } else if (buf[6] == 2) {
         /* initial chunk, may contain audio and silence */
         uint32_t flags = AV_RB32(p);
-        int raw_block_size = s->block_align * s->bits / 8;
+        int raw_block_size = s->block_align *
+                             (av_get_bits_per_sample_fmt(avctx->sample_fmt) / 8);
         int silent_chunks;
         if(flags == 0xFFFFFFFF)
             silent_chunks = 32;




More information about the ffmpeg-cvslog mailing list