Commit b4c0daa8 authored by Alexandra Hájková's avatar Alexandra Hájková Committed by Anton Khirnov

cdxl: Convert to the new bitstream reader

Signed-off-by: 's avatarAnton Khirnov <anton@khirnov.net>
parent 0977a7c2
...@@ -21,8 +21,9 @@ ...@@ -21,8 +21,9 @@
#include "libavutil/intreadwrite.h" #include "libavutil/intreadwrite.h"
#include "libavutil/imgutils.h" #include "libavutil/imgutils.h"
#include "avcodec.h" #include "avcodec.h"
#include "get_bits.h" #include "bitstream.h"
#include "internal.h" #include "internal.h"
#define BIT_PLANAR 0x00 #define BIT_PLANAR 0x00
...@@ -69,30 +70,30 @@ static void import_palette(CDXLVideoContext *c, uint32_t *new_palette) ...@@ -69,30 +70,30 @@ static void import_palette(CDXLVideoContext *c, uint32_t *new_palette)
static void bitplanar2chunky(CDXLVideoContext *c, int linesize, uint8_t *out) static void bitplanar2chunky(CDXLVideoContext *c, int linesize, uint8_t *out)
{ {
GetBitContext gb; BitstreamContext bc;
int x, y, plane; int x, y, plane;
init_get_bits(&gb, c->video, c->video_size * 8); bitstream_init(&bc, c->video, c->video_size * 8);
for (plane = 0; plane < c->bpp; plane++) { for (plane = 0; plane < c->bpp; plane++) {
for (y = 0; y < c->avctx->height; y++) { for (y = 0; y < c->avctx->height; y++) {
for (x = 0; x < c->avctx->width; x++) for (x = 0; x < c->avctx->width; x++)
out[linesize * y + x] |= get_bits1(&gb) << plane; out[linesize * y + x] |= bitstream_read_bit(&bc) << plane;
skip_bits(&gb, c->padded_bits); bitstream_skip(&bc, c->padded_bits);
} }
} }
} }
static void bitline2chunky(CDXLVideoContext *c, int linesize, uint8_t *out) static void bitline2chunky(CDXLVideoContext *c, int linesize, uint8_t *out)
{ {
GetBitContext gb; BitstreamContext bc;
int x, y, plane; int x, y, plane;
init_get_bits(&gb, c->video, c->video_size * 8); bitstream_init(&bc, c->video, c->video_size * 8);
for (y = 0; y < c->avctx->height; y++) { for (y = 0; y < c->avctx->height; y++) {
for (plane = 0; plane < c->bpp; plane++) { for (plane = 0; plane < c->bpp; plane++) {
for (x = 0; x < c->avctx->width; x++) for (x = 0; x < c->avctx->width; x++)
out[linesize * y + x] |= get_bits1(&gb) << plane; out[linesize * y + x] |= bitstream_read_bit(&bc) << plane;
skip_bits(&gb, c->padded_bits); bitstream_skip(&bc, c->padded_bits);
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment