mirror of https://git.ffmpeg.org/ffmpeg.git
cdxl: Convert to the new bitstream reader
Signed-off-by: Anton Khirnov <anton@khirnov.net>
This commit is contained in:
parent
0977a7c2f6
commit
b4c0daa83c
|
@ -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)
|
||||||
|
|
||||||
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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue