Index: source/libvpx/vp9/encoder/vp9_speed_features.c |
diff --git a/source/libvpx/vp9/encoder/vp9_speed_features.c b/source/libvpx/vp9/encoder/vp9_speed_features.c |
index 15831fbbe8b80530d234d97c423402fe440c22a0..3515b6e75305ed1a37e6544d1261430d861d294a 100644 |
--- a/source/libvpx/vp9/encoder/vp9_speed_features.c |
+++ b/source/libvpx/vp9/encoder/vp9_speed_features.c |
@@ -105,7 +105,9 @@ static void set_good_speed_feature(VP9_COMP *cpi, VP9_COMMON *cm, |
sf->tx_size_search_method = frame_is_boosted(cpi) ? USE_FULL_RD |
: USE_LARGESTALL; |
- sf->reference_masking = 1; |
+ // Reference masking is not supported in dynamic scaling mode. |
+ sf->reference_masking = cpi->oxcf.resize_mode != RESIZE_DYNAMIC ? 1 : 0; |
+ |
sf->mode_search_skip_flags = (cm->frame_type == KEY_FRAME) ? 0 : |
FLAG_SKIP_INTRA_DIRMISMATCH | |
FLAG_SKIP_INTRA_BESTINTER | |
@@ -234,7 +236,10 @@ static void set_rt_speed_feature(VP9_COMP *cpi, SPEED_FEATURES *sf, |
FLAG_SKIP_COMP_BESTINTRA | |
FLAG_SKIP_INTRA_LOWVAR; |
sf->adaptive_pred_interp_filter = 2; |
- sf->reference_masking = 1; |
+ |
+ // Reference masking is not supported in dynamic scaling mode. |
+ sf->reference_masking = cpi->oxcf.resize_mode != RESIZE_DYNAMIC ? 1 : 0; |
+ |
sf->disable_filter_search_var_thresh = 50; |
sf->comp_inter_joint_search_thresh = BLOCK_SIZES; |
sf->auto_min_max_partition_size = RELAXED_NEIGHBORING_MIN_MAX; |
@@ -337,11 +342,11 @@ static void set_rt_speed_feature(VP9_COMP *cpi, SPEED_FEATURES *sf, |
sf->adaptive_rd_thresh = 3; |
sf->mv.search_method = FAST_DIAMOND; |
sf->mv.fullpel_search_step_param = 10; |
- sf->lpf_pick = LPF_PICK_MINIMAL_LPF; |
} |
if (speed >= 8) { |
sf->adaptive_rd_thresh = 4; |
sf->mv.subpel_force_stop = 2; |
+ sf->lpf_pick = LPF_PICK_MINIMAL_LPF; |
} |
} |
@@ -446,7 +451,6 @@ void vp9_set_speed_features_framesize_independent(VP9_COMP *cpi) { |
sf->always_this_block_size = BLOCK_16X16; |
sf->search_type_check_frequency = 50; |
sf->encode_breakout_thresh = 0; |
- sf->elevate_newmv_thresh = 0; |
// Recode loop tolerance %. |
sf->recode_tolerance = 25; |
sf->default_interp_filter = SWITCHABLE; |