[FFmpeg-cvslog] avcodec/ratecontrol: Pass RCContext directly in ff_rate_control_uninit()
Andreas Rheinhardt
git at videolan.org
Wed Jun 12 14:14:29 EEST 2024
ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Sat May 4 19:09:28 2024 +0200| [0c9e04b0e22cf2571ea3cfe3288cd05b18836b9f] | committer: Andreas Rheinhardt
avcodec/ratecontrol: Pass RCContext directly in ff_rate_control_uninit()
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0c9e04b0e22cf2571ea3cfe3288cd05b18836b9f
---
libavcodec/mpegvideo_enc.c | 2 +-
libavcodec/ratecontrol.c | 5 ++---
libavcodec/ratecontrol.h | 2 +-
libavcodec/snowenc.c | 2 +-
4 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index 82bab43e14..6bfb27c949 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -989,7 +989,7 @@ av_cold int ff_mpv_encode_end(AVCodecContext *avctx)
MpegEncContext *s = avctx->priv_data;
int i;
- ff_rate_control_uninit(s);
+ ff_rate_control_uninit(&s->rc_context);
ff_mpv_common_end(s);
diff --git a/libavcodec/ratecontrol.c b/libavcodec/ratecontrol.c
index 27017d7976..78022d80aa 100644
--- a/libavcodec/ratecontrol.c
+++ b/libavcodec/ratecontrol.c
@@ -623,7 +623,7 @@ av_cold int ff_rate_control_init(MpegEncContext *s)
}
if (init_pass2(s) < 0) {
- ff_rate_control_uninit(s);
+ ff_rate_control_uninit(rcc);
return -1;
}
}
@@ -688,9 +688,8 @@ av_cold int ff_rate_control_init(MpegEncContext *s)
return 0;
}
-av_cold void ff_rate_control_uninit(MpegEncContext *s)
+av_cold void ff_rate_control_uninit(RateControlContext *rcc)
{
- RateControlContext *rcc = &s->rc_context;
emms_c();
av_expr_free(rcc->rc_eq_eval);
diff --git a/libavcodec/ratecontrol.h b/libavcodec/ratecontrol.h
index 1f44b44341..a5434f5b90 100644
--- a/libavcodec/ratecontrol.h
+++ b/libavcodec/ratecontrol.h
@@ -87,8 +87,8 @@ struct MpegEncContext;
int ff_rate_control_init(struct MpegEncContext *s);
float ff_rate_estimate_qscale(struct MpegEncContext *s, int dry_run);
void ff_write_pass1_stats(struct MpegEncContext *s);
-void ff_rate_control_uninit(struct MpegEncContext *s);
int ff_vbv_update(struct MpegEncContext *s, int frame_size);
void ff_get_2pass_fcode(struct MpegEncContext *s);
+void ff_rate_control_uninit(RateControlContext *rcc);
#endif /* AVCODEC_RATECONTROL_H */
diff --git a/libavcodec/snowenc.c b/libavcodec/snowenc.c
index 43ca602762..b59dc04edc 100644
--- a/libavcodec/snowenc.c
+++ b/libavcodec/snowenc.c
@@ -2077,7 +2077,7 @@ static av_cold int encode_end(AVCodecContext *avctx)
SnowContext *const s = &enc->com;
ff_snow_common_end(s);
- ff_rate_control_uninit(&enc->m);
+ ff_rate_control_uninit(&enc->m.rc_context);
av_frame_free(&s->input_picture);
for (int i = 0; i < MAX_REF_FRAMES; i++) {
More information about the ffmpeg-cvslog
mailing list