]> git.sesse.net Git - ffmpeg/commitdiff
avcodec/adpcm: clip step for ADPCM MTAF decoder
authorPaul B Mahol <onemda@gmail.com>
Thu, 15 Sep 2016 15:24:40 +0000 (17:24 +0200)
committerPaul B Mahol <onemda@gmail.com>
Thu, 15 Sep 2016 15:24:40 +0000 (17:24 +0200)
Signed-off-by: Paul B Mahol <onemda@gmail.com>
libavcodec/adpcm.c

index 06ba83e3c3777a17748c0deefaf3bec09ebf81e9..cb7f644f66a511662671f68ee5fc4b6c1fc7ba6f 100644 (file)
@@ -909,8 +909,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data,
     case AV_CODEC_ID_ADPCM_MTAF:
         for (channel = 0; channel < avctx->channels; channel+=2) {
             bytestream2_skipu(&gb, 4);
-            c->status[channel    ].step      = bytestream2_get_le16u(&gb);
-            c->status[channel + 1].step      = bytestream2_get_le16u(&gb);
+            c->status[channel    ].step      = bytestream2_get_le16u(&gb) & 0x1f;
+            c->status[channel + 1].step      = bytestream2_get_le16u(&gb) & 0x1f;
             c->status[channel    ].predictor = sign_extend(bytestream2_get_le16u(&gb), 16);
             bytestream2_skipu(&gb, 2);
             c->status[channel + 1].predictor = sign_extend(bytestream2_get_le16u(&gb), 16);