avcodec/vc2enc: Constify slices->main context pointers

Reviewed-by: Lynne <dev@lynne.ee>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
Andreas Rheinhardt
2024-05-25 20:18:12 +02:00
parent 6d86146fce
commit b1702afdfd

View File

@ -106,7 +106,7 @@ typedef struct Plane {
typedef struct SliceArgs { typedef struct SliceArgs {
PutBitContext pb; PutBitContext pb;
int cache[DIRAC_MAX_QUANT_INDEX]; int cache[DIRAC_MAX_QUANT_INDEX];
struct VC2EncContext *ctx; const struct VC2EncContext *ctx;
int x; int x;
int y; int y;
int quant_idx; int quant_idx;
@ -116,7 +116,7 @@ typedef struct SliceArgs {
} SliceArgs; } SliceArgs;
typedef struct TransformArgs { typedef struct TransformArgs {
struct VC2EncContext *ctx; const struct VC2EncContext *ctx;
Plane *plane; Plane *plane;
const void *idata; const void *idata;
ptrdiff_t istride; ptrdiff_t istride;
@ -527,8 +527,8 @@ static void encode_picture_start(VC2EncContext *s)
#define QUANT(c, mul, add, shift) (((mul) * (c) + (add)) >> (shift)) #define QUANT(c, mul, add, shift) (((mul) * (c) + (add)) >> (shift))
/* VC-2 13.5.5.2 - slice_band() */ /* VC-2 13.5.5.2 - slice_band() */
static void encode_subband(VC2EncContext *s, PutBitContext *pb, int sx, int sy, static void encode_subband(const VC2EncContext *s, PutBitContext *pb,
SubBand *b, int quant) int sx, int sy, const SubBand *b, int quant)
{ {
int x, y; int x, y;
@ -558,7 +558,7 @@ static int count_hq_slice(SliceArgs *slice, int quant_idx)
int x, y; int x, y;
uint8_t quants[MAX_DWT_LEVELS][4]; uint8_t quants[MAX_DWT_LEVELS][4];
int bits = 0, p, level, orientation; int bits = 0, p, level, orientation;
VC2EncContext *s = slice->ctx; const VC2EncContext *s = slice->ctx;
if (slice->cache[quant_idx]) if (slice->cache[quant_idx])
return slice->cache[quant_idx]; return slice->cache[quant_idx];
@ -576,7 +576,7 @@ static int count_hq_slice(SliceArgs *slice, int quant_idx)
bits += 8; bits += 8;
for (level = 0; level < s->wavelet_depth; level++) { for (level = 0; level < s->wavelet_depth; level++) {
for (orientation = !!level; orientation < 4; orientation++) { for (orientation = !!level; orientation < 4; orientation++) {
SubBand *b = &s->plane[p].band[level][orientation]; const SubBand *b = &s->plane[p].band[level][orientation];
const int q_idx = quants[level][orientation]; const int q_idx = quants[level][orientation];
const uint64_t q_m = ((uint64_t)s->qmagic_lut[q_idx][0]) << 2; const uint64_t q_m = ((uint64_t)s->qmagic_lut[q_idx][0]) << 2;
@ -618,7 +618,7 @@ static int count_hq_slice(SliceArgs *slice, int quant_idx)
static int rate_control(AVCodecContext *avctx, void *arg) static int rate_control(AVCodecContext *avctx, void *arg)
{ {
SliceArgs *slice_dat = arg; SliceArgs *slice_dat = arg;
VC2EncContext *s = slice_dat->ctx; const VC2EncContext *s = slice_dat->ctx;
const int top = slice_dat->bits_ceil; const int top = slice_dat->bits_ceil;
const int bottom = slice_dat->bits_floor; const int bottom = slice_dat->bits_floor;
int quant_buf[2] = {-1, -1}; int quant_buf[2] = {-1, -1};
@ -724,7 +724,7 @@ static int calc_slice_sizes(VC2EncContext *s)
static int encode_hq_slice(AVCodecContext *avctx, void *arg) static int encode_hq_slice(AVCodecContext *avctx, void *arg)
{ {
SliceArgs *slice_dat = arg; SliceArgs *slice_dat = arg;
VC2EncContext *s = slice_dat->ctx; const VC2EncContext *s = slice_dat->ctx;
PutBitContext *pb = &slice_dat->pb; PutBitContext *pb = &slice_dat->pb;
const int slice_x = slice_dat->x; const int slice_x = slice_dat->x;
const int slice_y = slice_dat->y; const int slice_y = slice_dat->y;
@ -839,7 +839,7 @@ static int encode_slices(VC2EncContext *s)
static int dwt_plane(AVCodecContext *avctx, void *arg) static int dwt_plane(AVCodecContext *avctx, void *arg)
{ {
TransformArgs *transform_dat = arg; TransformArgs *transform_dat = arg;
VC2EncContext *s = transform_dat->ctx; const VC2EncContext *s = transform_dat->ctx;
const void *frame_data = transform_dat->idata; const void *frame_data = transform_dat->idata;
const ptrdiff_t linesize = transform_dat->istride; const ptrdiff_t linesize = transform_dat->istride;
const int field = transform_dat->field; const int field = transform_dat->field;