summaryrefslogtreecommitdiff
path: root/vp9
diff options
context:
space:
mode:
authorMarco <marpan@google.com>2017-06-21 15:24:56 -0700
committerMarco <marpan@google.com>2017-06-21 16:01:24 -0700
commit8cf6f78fcee6cf436fb5b5c540806129e16ebc7a (patch)
tree9b2192e289f735f22821c60b7985a0f4537c8f3d /vp9
parent355432b0d2c3d700022ab1f6858a9ce58074a46c (diff)
downloadlibvpx-8cf6f78fcee6cf436fb5b5c540806129e16ebc7a.tar
libvpx-8cf6f78fcee6cf436fb5b5c540806129e16ebc7a.tar.gz
libvpx-8cf6f78fcee6cf436fb5b5c540806129e16ebc7a.tar.bz2
libvpx-8cf6f78fcee6cf436fb5b5c540806129e16ebc7a.zip
vp9: Adjustments for aq-mode and pickmode for speed >= 8.
Adjust the threshold for turning off cyclic refresh for high motion, and avoid testing golden in nonrd pickmode for speed >= 8 if golden refresh was long ago. No change/neutral on RTC metrics. Change-Id: I40959b8d9637f3553e7458bbabd8c6024c2c09c0
Diffstat (limited to 'vp9')
-rw-r--r--vp9/encoder/vp9_aq_cyclicrefresh.c3
-rw-r--r--vp9/encoder/vp9_pickmode.c2
2 files changed, 3 insertions, 2 deletions
diff --git a/vp9/encoder/vp9_aq_cyclicrefresh.c b/vp9/encoder/vp9_aq_cyclicrefresh.c
index 048ea629f..2f2f0055a 100644
--- a/vp9/encoder/vp9_aq_cyclicrefresh.c
+++ b/vp9/encoder/vp9_aq_cyclicrefresh.c
@@ -425,9 +425,10 @@ void vp9_cyclic_refresh_update_parameters(VP9_COMP *const cpi) {
int target_refresh = 0;
double weight_segment_target = 0;
double weight_segment = 0;
+ int thresh_low_motion = (cm->width < 720) ? 55 : 20;
cr->apply_cyclic_refresh = 1;
if (cm->frame_type == KEY_FRAME || cpi->svc.temporal_layer_id > 0 ||
- (!cpi->use_svc && rc->avg_frame_low_motion < 55 &&
+ (!cpi->use_svc && rc->avg_frame_low_motion < thresh_low_motion &&
rc->frames_since_key > 40)) {
cr->apply_cyclic_refresh = 0;
return;
diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c
index b1579a61a..20b57f44c 100644
--- a/vp9/encoder/vp9_pickmode.c
+++ b/vp9/encoder/vp9_pickmode.c
@@ -1617,7 +1617,7 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, TileDataEnc *tile_data,
if (cpi->oxcf.speed >= 8 && !cpi->use_svc &&
((cpi->rc.frames_since_golden + 1) < x->last_sb_high_content ||
- x->last_sb_high_content > 40))
+ x->last_sb_high_content > 40 || cpi->rc.frames_since_golden > 120))
usable_ref_frame = LAST_FRAME;
for (ref_frame = LAST_FRAME; ref_frame <= usable_ref_frame; ++ref_frame) {