shithub: libvpx

Download patch

ref: 63ceb97c0e4c0f23bd79f560bb703b698cf5899e
parent: 7593588eb1c7e786b62c5f21c081a4bfb1d00d4f
author: Marco Paniconi <marpan@google.com>
date: Thu Jan 31 10:19:45 EST 2019

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

--- a/vp9/encoder/vp9_aq_cyclicrefresh.c
+++ b/vp9/encoder/vp9_aq_cyclicrefresh.c
@@ -479,7 +479,8 @@
   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) ||