summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandra Hájková <alexandra@khirnov.net>2016-04-14 11:52:48 +0200
committerAlexandra Hájková <alexandra@khirnov.net>2016-05-22 16:48:00 +0200
commit32ff1f6f34e0f11d8a5fe17ea3a2927570a058d9 (patch)
treeec07c9936c99e84678bed23ebf1e30d9b11163bc
parent8cd219d8a1e57098905aa3261e7f93eab4e9ac87 (diff)
vble: convert to the new bitstream reader
-rw-r--r--libavcodec/vble.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/libavcodec/vble.c b/libavcodec/vble.c
index 7ce1aeebfa..662db30e93 100644
--- a/libavcodec/vble.c
+++ b/libavcodec/vble.c
@@ -29,7 +29,7 @@
#include "libavutil/imgutils.h"
#include "avcodec.h"
-#include "get_bits.h"
+#include "bitstream.h"
#include "huffyuvdsp.h"
#include "internal.h"
#include "mathops.h"
@@ -42,18 +42,18 @@ typedef struct VBLEContext {
uint8_t *val; /* First holds the lengths of vlc symbols and then their values */
} VBLEContext;
-static uint8_t vble_read_reverse_unary(GetBitContext *gb)
+static uint8_t vble_read_reverse_unary(BitstreamContext *bc)
{
/* At most we need to read 9 bits total to get indices up to 8 */
- uint8_t val = show_bits(gb, 8);
+ uint8_t val = bitstream_peek(bc, 8);
if (val) {
val = 7 - av_log2_16bit(ff_reverse[val]);
- skip_bits(gb, val + 1);
+ bitstream_skip(bc, val + 1);
return val;
} else {
- skip_bits(gb, 8);
- if (get_bits1(gb))
+ bitstream_skip(bc, 8);
+ if (bitstream_read_bit(bc))
return 8;
}
@@ -61,13 +61,13 @@ static uint8_t vble_read_reverse_unary(GetBitContext *gb)
return UINT8_MAX;
}
-static int vble_unpack(VBLEContext *ctx, GetBitContext *gb)
+static int vble_unpack(VBLEContext *ctx, BitstreamContext *bc)
{
int i;
/* Read all the lengths in first */
for (i = 0; i < ctx->size; i++) {
- ctx->val[i] = vble_read_reverse_unary(gb);
+ ctx->val[i] = vble_read_reverse_unary(bc);
if (ctx->val[i] == UINT8_MAX)
return -1;
@@ -75,12 +75,12 @@ static int vble_unpack(VBLEContext *ctx, GetBitContext *gb)
for (i = 0; i < ctx->size; i++) {
/* Check we have enough bits left */
- if (get_bits_left(gb) < ctx->val[i])
+ if (bitstream_bits_left(bc) < ctx->val[i])
return -1;
/* get_bits can't take a length of 0 */
if (ctx->val[i])
- ctx->val[i] = (1 << ctx->val[i]) + get_bits(gb, ctx->val[i]) - 1;
+ ctx->val[i] = (1 << ctx->val[i]) + bitstream_read(bc, ctx->val[i]) - 1;
}
return 0;
@@ -119,7 +119,7 @@ static int vble_decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
{
VBLEContext *ctx = avctx->priv_data;
AVFrame *pic = data;
- GetBitContext gb;
+ BitstreamContext bc;
const uint8_t *src = avpkt->data;
int version;
int offset = 0;
@@ -141,10 +141,10 @@ static int vble_decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
if (version != 1)
av_log(avctx, AV_LOG_WARNING, "Unsupported VBLE Version: %d\n", version);
- init_get_bits(&gb, src + 4, (avpkt->size - 4) * 8);
+ bitstream_init(&bc, src + 4, (avpkt->size - 4) * 8);
/* Unpack */
- if (vble_unpack(ctx, &gb) < 0) {
+ if (vble_unpack(ctx, &bc) < 0) {
av_log(avctx, AV_LOG_ERROR, "Invalid Code\n");
return AVERROR_INVALIDDATA;
}