OSDN Git Service

qcelp: Convert to the new bitstream reader
authorAlexandra Hájková <alexandra@khirnov.net>
Tue, 12 Apr 2016 16:39:16 +0000 (18:39 +0200)
committerAnton Khirnov <anton@khirnov.net>
Fri, 18 Nov 2016 09:36:18 +0000 (10:36 +0100)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
libavcodec/qcelpdec.c

index e9e7347..9d5e13a 100644 (file)
 
 #include "libavutil/channel_layout.h"
 #include "libavutil/float_dsp.h"
+
 #include "avcodec.h"
+#include "bitstream.h"
 #include "internal.h"
-#include "get_bits.h"
 #include "qcelpdata.h"
 #include "celp_filters.h"
 #include "acelp_filters.h"
@@ -53,7 +54,7 @@ typedef enum {
 } qcelp_packet_rate;
 
 typedef struct QCELPContext {
-    GetBitContext     gb;
+    BitstreamContext  bc;
     qcelp_packet_rate bitrate;
     QCELPFrame        frame;    /**< unpacked data frame */
 
@@ -718,12 +719,12 @@ static int qcelp_decode_frame(AVCodecContext *avctx, void *data,
                                          qcelp_unpacking_bitmaps_lengths[q->bitrate];
         uint8_t *unpacked_data         = (uint8_t *)&q->frame;
 
-        init_get_bits(&q->gb, buf, 8 * buf_size);
+        bitstream_init(&q->bc, buf, 8 * buf_size);
 
         memset(&q->frame, 0, sizeof(QCELPFrame));
 
         for (; bitmaps < bitmaps_end; bitmaps++)
-            unpacked_data[bitmaps->index] |= get_bits(&q->gb, bitmaps->bitlen) << bitmaps->bitpos;
+            unpacked_data[bitmaps->index] |= bitstream_read(&q->bc, bitmaps->bitlen) << bitmaps->bitpos;
 
         // Check for erasures/blanks on rates 1, 1/4 and 1/8.
         if (q->frame.reserved) {