Remove motion_mode rd breakout speed feature This feature is less useful with 2-pass inter mode search and adaptive versions of that. Hence removing. STATS_CHANGED Change-Id: I456382fb7a500bb5c550988ba38d73fd512029db
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c index 5a6556e..99accb3 100644 --- a/av1/encoder/rdopt.c +++ b/av1/encoder/rdopt.c
@@ -9591,20 +9591,6 @@ } } - if (cpi->sf.model_based_motion_mode_rd_breakout && do_tx_search) { - int model_rate; - int64_t model_dist; - model_rd_sb_fn[MODELRD_TYPE_MOTION_MODE_RD]( - cpi, mbmi->sb_type, x, xd, 0, num_planes - 1, mi_row, mi_col, - &model_rate, &model_dist, NULL, NULL, NULL, NULL, NULL); - const int64_t est_rd = - RDCOST(x->rdmult, rd_stats->rate + model_rate, model_dist); - if ((est_rd >> 3) * 6 > ref_best_rd) { - mbmi->ref_frame[1] = ref_frame_1; - continue; - } - } - if (!do_tx_search) { int64_t curr_sse = -1; int est_residue_cost = 0;
diff --git a/av1/encoder/speed_features.c b/av1/encoder/speed_features.c index e3eb193..5794983 100644 --- a/av1/encoder/speed_features.c +++ b/av1/encoder/speed_features.c
@@ -220,7 +220,6 @@ sf->use_dist_wtd_comp_flag = DIST_WTD_COMP_SKIP_MV_SEARCH; sf->model_based_prune_tx_search_level = 1; sf->model_based_post_interp_filter_breakout = 1; - sf->model_based_motion_mode_rd_breakout = 1; // TODO(debargha): Test, tweak and turn on either 1 or 2 sf->inter_mode_rd_model_estimation = 1; @@ -444,7 +443,6 @@ sf->use_dist_wtd_comp_flag = DIST_WTD_COMP_SKIP_MV_SEARCH; sf->model_based_prune_tx_search_level = 1; sf->model_based_post_interp_filter_breakout = 1; - sf->model_based_motion_mode_rd_breakout = 1; // TODO(debargha): Test, tweak and turn on either 1 or 2 sf->inter_mode_rd_model_estimation = 0; @@ -692,7 +690,6 @@ sf->tx_size_search_lgr_block = 0; sf->model_based_prune_tx_search_level = 0; sf->model_based_post_interp_filter_breakout = 0; - sf->model_based_motion_mode_rd_breakout = 0; sf->reduce_inter_modes = 0; sf->selective_ref_gm = 1; sf->adaptive_motion_search = 0; @@ -790,9 +787,6 @@ // Set decoder side speed feature to use less dual sgr modes sf->dual_sgr_penalty_level = 0; - // TODO(angiebird, debargha): Re-evaluate the impact of - // inter_mode_rd_model_estimation in conjunction with - // model_based_motion_mode_rd_breakout sf->inter_mode_rd_model_estimation = 0; sf->inter_mode_rd_model_estimation_adaptive = 0;
diff --git a/av1/encoder/speed_features.h b/av1/encoder/speed_features.h index 1cc1b82..358f4c9 100644 --- a/av1/encoder/speed_features.h +++ b/av1/encoder/speed_features.h
@@ -354,11 +354,6 @@ // 1: use model based rd breakout int model_based_post_interp_filter_breakout; - // Model based breakout in motion_mode_rd - // 0: no breakout - // 1: use model based rd breakout - int model_based_motion_mode_rd_breakout; - // Used if partition_search_type = FIXED_SIZE_PARTITION BLOCK_SIZE always_this_block_size;