From 89d23138d2a67a3e518d1026f87cdd5a9e1bee78 Mon Sep 17 00:00:00 2001 From: Marco Paniconi Date: Fri, 3 Aug 2018 09:20:55 -0700 Subject: vp9: Adjust qp_thresh on slide change overshoot detection For real-time screen-content mode: increase the qp_thresh for max_Q setting on slide changes. This will make bitrate spikes less likely on slide changes. Change-Id: Ie13524a06490214456b1c9c042a864ea0d0750c5 --- vp9/encoder/vp9_ratectrl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'vp9') diff --git a/vp9/encoder/vp9_ratectrl.c b/vp9/encoder/vp9_ratectrl.c index 47669a049..1ec696517 100644 --- a/vp9/encoder/vp9_ratectrl.c +++ b/vp9/encoder/vp9_ratectrl.c @@ -2820,7 +2820,7 @@ int vp9_encodedframe_overshoot(VP9_COMP *cpi, int frame_size, int *q) { // If this decision is not based on an encoded frame size but just on // scene/slide change detection (i.e., re_encode_overshoot_rt = 0), adjust the // qp_thresh and skip the (frame_size > thresh_rate) condition in this case. - if (!sf->re_encode_overshoot_rt) thresh_qp = rc->worst_quality >> 1; + if (!sf->re_encode_overshoot_rt) thresh_qp = 3 * (rc->worst_quality >> 2); if ((!sf->re_encode_overshoot_rt || frame_size > thresh_rate) && cm->base_qindex < thresh_qp) { double rate_correction_factor = -- cgit v1.2.3