ref: a74593b30c1472cf8e9c61d5a0d39fa3b9cdf4df
parent: ece1989fa2da10eecf1cb1dde1d5f8afa9480b8b
author: Marco <marpan@google.com>
date: Fri Aug 25 05:59:57 EDT 2017
vp9: SVC: Modify mv search condition in speed features. For SVC at speed >= 7: only use the improved mv search on base spatial layer, if top layer resolution is above 640x360. ~2.3% speedup Small/negligible loss in avgPSNR metrics on rtc set. Change-Id: Iaef75a57ebf1c248931bc1aa28d20b7fecac1851
--- a/vp9/encoder/vp9_speed_features.c
+++ b/vp9/encoder/vp9_speed_features.c
@@ -560,8 +560,12 @@
sf->adaptive_rd_thresh = 3;
sf->mv.search_method = FAST_DIAMOND;
sf->mv.fullpel_search_step_param = 10;
+ // For SVC: use better mv search on base temporal layer, and only
+ // on base spatial layer if highest resolution is above 640x360.
if (cpi->svc.number_temporal_layers > 2 &&
- cpi->svc.temporal_layer_id == 0) {
+ cpi->svc.temporal_layer_id == 0 &&
+ (cpi->svc.spatial_layer_id == 0 ||
+ cpi->oxcf.width * cpi->oxcf.height <= 640 * 360)) {
sf->mv.search_method = NSTEP;
sf->mv.fullpel_search_step_param = 6;
}