ref: d310225c19d52d26241399fc7d67753f9eac0944
parent: 16ddf82dc0395098287ec74eddc2c0f9ea3e3793
parent: 972d31480fdf1575fefaf48cbef2ad2041a8092c
author: Marco Paniconi <marpan@google.com>
date: Tue Apr 16 17:44:34 EDT 2019
Merge "vp9-rtc: Add speed feature to force SMOOTH filter"
--- a/vp9/encoder/vp9_pickmode.c
+++ b/vp9/encoder/vp9_pickmode.c
@@ -1690,10 +1690,7 @@
int no_scaling = 0;
unsigned int thresh_svc_skip_golden = 500;
unsigned int thresh_skip_golden = 500;
- // TODO(marpan/jianj): forcing smooth_interpol is visually better for noisy
- // content, at low resolns. Look into adding this conditon. For now keep
- // it off.
- int force_smooth_filter = 0;
+ int force_smooth_filter = cpi->sf.force_smooth_interpol;
int scene_change_detected =
cpi->rc.high_source_sad ||
(cpi->use_svc && cpi->svc.high_source_sad_superframe);
--- a/vp9/encoder/vp9_speed_features.c
+++ b/vp9/encoder/vp9_speed_features.c
@@ -453,6 +453,7 @@
sf->nonrd_use_ml_partition = 0;
sf->variance_part_thresh_mult = 1;
sf->cb_pred_filter_search = 0;
+ sf->force_smooth_interpol = 0;
if (speed >= 1) {
sf->allow_txfm_domain_distortion = 1;
--- a/vp9/encoder/vp9_speed_features.h
+++ b/vp9/encoder/vp9_speed_features.h
@@ -608,6 +608,9 @@
// Multiplier for base thresold for variance partitioning.
int variance_part_thresh_mult;
+
+ // Force subpel motion filter to always use SMOOTH_FILTER.
+ int force_smooth_interpol;
} SPEED_FEATURES;
struct VP9_COMP;