From d554b33efe97d4b46c695e7cfa6f248780907ee7 Mon Sep 17 00:00:00 2001 From: Luca Barbato Date: Fri, 16 Sep 2011 20:06:55 +0200 Subject: ratecontrol: update last_qscale_for sooner In order to make ratecontrol converge properly update the last_qscale_for values when populating the qscale array. It fixes the issue reported on http://lists.libav.org/pipermail/libav-tools/2011-September/000050.html --- libavcodec/ratecontrol.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'libavcodec/ratecontrol.c') diff --git a/libavcodec/ratecontrol.c b/libavcodec/ratecontrol.c index dc5c063f02..e984ed5b29 100644 --- a/libavcodec/ratecontrol.c +++ b/libavcodec/ratecontrol.c @@ -861,7 +861,9 @@ static int init_pass2(MpegEncContext *s) /* find qscale */ for(i=0; inum_entries; i++){ + RateControlEntry *rce= &rcc->entry[i]; qscale[i]= get_qscale(s, &rcc->entry[i], rate_factor, i); + rcc->last_qscale_for[rce->pict_type] = qscale[i]; } assert(filter_size%2==1); -- cgit v1.2.1