From: Marco Paniconi Date: Thu, 31 Jan 2019 23:19:45 +0000 (-0800) Subject: vp9: Tune qp_thresh to disable cyclic refresh for screen X-Git-Tag: v1.8.1~271^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=63ceb97c0e4c0f23bd79f560bb703b698cf5899e;p=libvpx vp9: Tune qp_thresh to disable cyclic refresh for screen For screen-content mode, with aq-mode=3: increase the qp thresh for disabling the cyclic refresh. Improves bitrate convergence for content that has been static for long period. Change-Id: Ica63a741402923a611ab1b86c0900f75d2d5f941 --- diff --git a/vp9/encoder/vp9_aq_cyclicrefresh.c b/vp9/encoder/vp9_aq_cyclicrefresh.c index a2a742493..ef8cd46b4 100644 --- a/vp9/encoder/vp9_aq_cyclicrefresh.c +++ b/vp9/encoder/vp9_aq_cyclicrefresh.c @@ -479,7 +479,8 @@ void vp9_cyclic_refresh_update_parameters(VP9_COMP *const cpi) { double weight_segment_target = 0; double weight_segment = 0; int thresh_low_motion = (cm->width < 720) ? 55 : 20; - int qp_thresh = VPXMIN(20, rc->best_quality << 1); + int qp_thresh = VPXMIN((cpi->oxcf.content == VP9E_CONTENT_SCREEN) ? 35 : 20, + rc->best_quality << 1); cr->apply_cyclic_refresh = 1; if (frame_is_intra_only(cm) || cpi->svc.temporal_layer_id > 0 || is_lossless_requested(&cpi->oxcf) ||