avocdec/huffyuvdec: Don't use HYuvContext.avctx

It is nearly unused anyway, so stop use the field altogether.
This is in preparation for splitting HYuvContext into
decoder and encoder contexts.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
Andreas Rheinhardt 2022-10-01 21:58:49 +02:00
parent 1741adb1c7
commit 59535346b1
3 changed files with 10 additions and 10 deletions

View File

@ -72,7 +72,6 @@ av_cold void ff_huffyuv_common_init(AVCodecContext *avctx)
{ {
HYuvContext *s = avctx->priv_data; HYuvContext *s = avctx->priv_data;
s->avctx = avctx;
s->flags = avctx->flags; s->flags = avctx->flags;
ff_bswapdsp_init(&s->bdsp); ff_bswapdsp_init(&s->bdsp);

View File

@ -813,12 +813,12 @@ static void decode_bgr_bitstream(HYuvContext *s, int count)
} }
} }
static void draw_slice(HYuvContext *s, AVFrame *frame, int y) static void draw_slice(HYuvContext *s, AVCodecContext *avctx, AVFrame *frame, int y)
{ {
int h, cy, i; int h, cy, i;
int offset[AV_NUM_DATA_POINTERS]; int offset[AV_NUM_DATA_POINTERS];
if (!s->avctx->draw_horiz_band) if (!avctx->draw_horiz_band)
return; return;
h = y - s->last_slice_end; h = y - s->last_slice_end;
@ -836,7 +836,7 @@ static void draw_slice(HYuvContext *s, AVFrame *frame, int y)
offset[i] = 0; offset[i] = 0;
emms_c(); emms_c();
s->avctx->draw_horiz_band(s->avctx, frame, offset, y, 3, h); avctx->draw_horiz_band(avctx, frame, offset, y, 3, h);
s->last_slice_end = y + h; s->last_slice_end = y + h;
} }
@ -952,7 +952,7 @@ static int decode_slice(AVCodecContext *avctx, AVFrame *p, int height,
break; break;
} }
} }
draw_slice(s, p, height); draw_slice(s, avctx, p, height);
} else if (s->bitstream_bpp < 24) { } else if (s->bitstream_bpp < 24) {
int y, cy; int y, cy;
int lefty, leftu, leftv; int lefty, leftu, leftv;
@ -1006,7 +1006,7 @@ static int decode_slice(AVCodecContext *avctx, AVFrame *p, int height,
break; break;
} }
draw_slice(s, p, y); draw_slice(s, avctx, p, y);
ydst = p->data[0] + p->linesize[0] * (y + y_offset); ydst = p->data[0] + p->linesize[0] * (y + y_offset);
udst = p->data[1] + p->linesize[1] * (cy + y_offset); udst = p->data[1] + p->linesize[1] * (cy + y_offset);
@ -1029,7 +1029,7 @@ static int decode_slice(AVCodecContext *avctx, AVFrame *p, int height,
} }
} }
} }
draw_slice(s, p, height); draw_slice(s, avctx, p, height);
break; break;
case MEDIAN: case MEDIAN:
@ -1100,7 +1100,7 @@ static int decode_slice(AVCodecContext *avctx, AVFrame *p, int height,
if (y >= height) if (y >= height)
break; break;
} }
draw_slice(s, p, y); draw_slice(s, avctx, p, y);
decode_422_bitstream(s, width); decode_422_bitstream(s, width);
@ -1117,7 +1117,7 @@ static int decode_slice(AVCodecContext *avctx, AVFrame *p, int height,
} }
} }
draw_slice(s, p, height); draw_slice(s, avctx, p, height);
break; break;
} }
} }
@ -1163,7 +1163,7 @@ static int decode_slice(AVCodecContext *avctx, AVFrame *p, int height,
} }
} }
// just 1 large slice as this is not possible in reverse order // just 1 large slice as this is not possible in reverse order
draw_slice(s, p, height); draw_slice(s, avctx, p, height);
break; break;
default: default:
av_log(avctx, AV_LOG_ERROR, av_log(avctx, AV_LOG_ERROR,

View File

@ -209,6 +209,7 @@ static av_cold int encode_init(AVCodecContext *avctx)
int ret; int ret;
const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->pix_fmt); const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->pix_fmt);
s->avctx = avctx;
ff_huffyuv_common_init(avctx); ff_huffyuv_common_init(avctx);
ff_huffyuvencdsp_init(&s->hencdsp, avctx->pix_fmt); ff_huffyuvencdsp_init(&s->hencdsp, avctx->pix_fmt);
ff_llvidencdsp_init(&s->llvidencdsp); ff_llvidencdsp_init(&s->llvidencdsp);