adpcm convert adpcm_ima_ea_sead to bytestream2.
authorRonald S. Bultje <rsbultje@gmail.com>
Sat, 17 Mar 2012 21:35:26 +0000 (14:35 -0700)
committerRonald S. Bultje <rsbultje@gmail.com>
Sun, 18 Mar 2012 22:33:15 +0000 (15:33 -0700)
libavcodec/adpcm.c

index 0a60719..ebeb2da 100644 (file)
@@ -860,9 +860,10 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data,
         }
         break;
     case CODEC_ID_ADPCM_IMA_EA_SEAD:
-        for (n = nb_samples >> (1 - st); n > 0; n--, src++) {
-            *samples++ = adpcm_ima_expand_nibble(&c->status[0], src[0] >> 4, 6);
-            *samples++ = adpcm_ima_expand_nibble(&c->status[st],src[0]&0x0F, 6);
+        for (n = nb_samples >> (1 - st); n > 0; n--) {
+            int byte = bytestream2_get_byteu(&gb);
+            *samples++ = adpcm_ima_expand_nibble(&c->status[0],  byte >> 4,   6);
+            *samples++ = adpcm_ima_expand_nibble(&c->status[st], byte & 0x0F, 6);
         }
         break;
     case CODEC_ID_ADPCM_EA: