summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-10-01 21:58:49 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-10-09 09:15:39 +0200
commit59535346b15e10efe0cfba24261e1f24634d31a4 (patch)
tree5c285f1fa49bf42da309ff5ac518b6a02f07a0b9
parent1741adb1c76d36ca1a0d6e9165d5928510cdd9a2 (diff)
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>
-rw-r--r--libavcodec/huffyuv.c1
-rw-r--r--libavcodec/huffyuvdec.c18
-rw-r--r--libavcodec/huffyuvenc.c1
3 files changed, 10 insertions, 10 deletions
diff --git a/libavcodec/huffyuv.c b/libavcodec/huffyuv.c
index e582060cc3..471bfa1bb9 100644
--- a/libavcodec/huffyuv.c
+++ b/libavcodec/huffyuv.c
@@ -72,7 +72,6 @@ av_cold void ff_huffyuv_common_init(AVCodecContext *avctx)
{
HYuvContext *s = avctx->priv_data;
- s->avctx = avctx;
s->flags = avctx->flags;
ff_bswapdsp_init(&s->bdsp);
diff --git a/libavcodec/huffyuvdec.c b/libavcodec/huffyuvdec.c
index fce7497386..edfc8c0038 100644
--- a/libavcodec/huffyuvdec.c
+++ b/libavcodec/huffyuvdec.c
@@ -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 offset[AV_NUM_DATA_POINTERS];
- if (!s->avctx->draw_horiz_band)
+ if (!avctx->draw_horiz_band)
return;
h = y - s->last_slice_end;
@@ -836,7 +836,7 @@ static void draw_slice(HYuvContext *s, AVFrame *frame, int y)
offset[i] = 0;
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;
}
@@ -952,7 +952,7 @@ static int decode_slice(AVCodecContext *avctx, AVFrame *p, int height,
break;
}
}
- draw_slice(s, p, height);
+ draw_slice(s, avctx, p, height);
} else if (s->bitstream_bpp < 24) {
int y, cy;
int lefty, leftu, leftv;
@@ -1006,7 +1006,7 @@ static int decode_slice(AVCodecContext *avctx, AVFrame *p, int height,
break;
}
- draw_slice(s, p, y);
+ draw_slice(s, avctx, p, y);
ydst = p->data[0] + p->linesize[0] * (y + 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;
case MEDIAN:
@@ -1100,7 +1100,7 @@ static int decode_slice(AVCodecContext *avctx, AVFrame *p, int height,
if (y >= height)
break;
}
- draw_slice(s, p, y);
+ draw_slice(s, avctx, p, y);
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;
}
}
@@ -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
- draw_slice(s, p, height);
+ draw_slice(s, avctx, p, height);
break;
default:
av_log(avctx, AV_LOG_ERROR,
diff --git a/libavcodec/huffyuvenc.c b/libavcodec/huffyuvenc.c
index 2137a16714..020159a20e 100644
--- a/libavcodec/huffyuvenc.c
+++ b/libavcodec/huffyuvenc.c
@@ -209,6 +209,7 @@ static av_cold int encode_init(AVCodecContext *avctx)
int ret;
const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->pix_fmt);
+ s->avctx = avctx;
ff_huffyuv_common_init(avctx);
ff_huffyuvencdsp_init(&s->hencdsp, avctx->pix_fmt);
ff_llvidencdsp_init(&s->llvidencdsp);