From 0c89ff82e9ddc68ec92316d786cd8ddc7b6c2b8c Mon Sep 17 00:00:00 2001 From: Alexandra Hájková Date: Sat, 23 Apr 2016 15:19:08 +0200 Subject: aic: Convert to the new bitstream reader --- libavcodec/aic.c | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/libavcodec/aic.c b/libavcodec/aic.c index 405ebf12d5..368b3bcf23 100644 --- a/libavcodec/aic.c +++ b/libavcodec/aic.c @@ -23,13 +23,13 @@ #include #include "avcodec.h" +#include "bitstream.h" #include "bytestream.h" +#include "golomb.h" #include "internal.h" -#include "get_bits.h" -#include "golomb_legacy.h" #include "idctdsp.h" #include "thread.h" -#include "unary_legacy.h" +#include "unary.h" #define AIC_HDR_SIZE 24 #define AIC_BAND_COEFFS (64 + 32 + 192 + 96) @@ -191,14 +191,14 @@ static int aic_decode_header(AICContext *ctx, const uint8_t *src, int size) #define GET_CODE(val, type, add_bits) \ do { \ if (type) \ - val = get_ue_golomb(gb); \ + val = get_ue_golomb(bc); \ else \ - val = get_unary(gb, 1, 31); \ + val = get_unary(bc, 1, 31); \ if (add_bits) \ - val = (val << add_bits) + get_bits(gb, add_bits); \ + val = (val << add_bits) + bitstream_read(bc, add_bits); \ } while (0) -static int aic_decode_coeffs(GetBitContext *gb, int16_t *dst, +static int aic_decode_coeffs(BitstreamContext *bc, int16_t *dst, int band, int slice_width, int force_chroma) { int has_skips, coeff_type, coeff_bits, skip_type, skip_bits; @@ -206,13 +206,13 @@ static int aic_decode_coeffs(GetBitContext *gb, int16_t *dst, const uint8_t *scan = aic_scan[band | force_chroma]; int mb, idx, val; - has_skips = get_bits1(gb); - coeff_type = get_bits1(gb); - coeff_bits = get_bits(gb, 3); + has_skips = bitstream_read_bit(bc); + coeff_type = bitstream_read_bit(bc); + coeff_bits = bitstream_read(bc, 3); if (has_skips) { - skip_type = get_bits1(gb); - skip_bits = get_bits(gb, 3); + skip_type = bitstream_read_bit(bc); + skip_bits = bitstream_read(bc, 3); for (mb = 0; mb < slice_width; mb++) { idx = -1; @@ -303,7 +303,7 @@ static void unquant_block(int16_t *block, int q) static int aic_decode_slice(AICContext *ctx, int mb_x, int mb_y, const uint8_t *src, int src_size) { - GetBitContext gb; + BitstreamContext bc; int ret, i, mb, blk; int slice_width = FFMIN(ctx->slice_width, ctx->mb_width - mb_x); uint8_t *Y, *C[2]; @@ -318,12 +318,12 @@ static int aic_decode_slice(AICContext *ctx, int mb_x, int mb_y, for (i = 0; i < 2; i++) C[i] = ctx->frame->data[i + 1] + mb_x * 8 + mb_y * 8 * ctx->frame->linesize[i + 1]; - init_get_bits(&gb, src, src_size * 8); + bitstream_init8(&bc, src, src_size); memset(ctx->slice_data, 0, sizeof(*ctx->slice_data) * slice_width * AIC_BAND_COEFFS); for (i = 0; i < NUM_BANDS; i++) - if ((ret = aic_decode_coeffs(&gb, ctx->data_ptr[i], + if ((ret = aic_decode_coeffs(&bc, ctx->data_ptr[i], i, slice_width, !ctx->interlaced)) < 0) return ret; -- cgit v1.2.3