#include "libavutil/channel_layout.h"
#include "libavutil/float_dsp.h"
+
#include "avcodec.h"
-#include "get_bits.h"
+#include "bitstream.h"
#include "internal.h"
#include "atrac.h"
#include "atrac3plus.h"
typedef struct ATRAC3PContext {
- GetBitContext gb;
+ BitstreamContext bc;
AVFloatDSPContext fdsp;
DECLARE_ALIGNED(32, float, samples)[2][ATRAC3P_FRAME_SAMPLES]; ///< quantized MDCT spectrum
return ret;
}
- if ((ret = init_get_bits8(&ctx->gb, avpkt->data, avpkt->size)) < 0)
+ if ((ret = bitstream_init8(&ctx->bc, avpkt->data, avpkt->size)) < 0)
return ret;
- if (get_bits1(&ctx->gb)) {
+ if (bitstream_read_bit(&ctx->bc)) {
av_log(avctx, AV_LOG_ERROR, "Invalid start bit!\n");
return AVERROR_INVALIDDATA;
}
- while (get_bits_left(&ctx->gb) >= 2 &&
- (ch_unit_id = get_bits(&ctx->gb, 2)) != CH_UNIT_TERMINATOR) {
+ while (bitstream_bits_left(&ctx->bc) >= 2 &&
+ (ch_unit_id = bitstream_read(&ctx->bc, 2)) != CH_UNIT_TERMINATOR) {
if (ch_unit_id == CH_UNIT_EXTENSION) {
avpriv_report_missing_feature(avctx, "Channel unit extension");
return AVERROR_PATCHWELCOME;
ctx->ch_units[ch_block].unit_type = ch_unit_id;
channels_to_process = ch_unit_id + 1;
- if ((ret = ff_atrac3p_decode_channel_unit(&ctx->gb,
+ if ((ret = ff_atrac3p_decode_channel_unit(&ctx->bc,
&ctx->ch_units[ch_block],
channels_to_process,
avctx)) < 0)