From 00fe92c22f875eee2f3bed9de542368ee00b2af2 Mon Sep 17 00:00:00 2001 From: Jingning Han Date: Thu, 11 Sep 2014 15:54:53 -0700 Subject: [PATCH] Remove unused speed feature The speed feature that skips compound inter prediction modes was subsumed by other speed features and effectively was not in use. This commit removes it. Change-Id: I22b0c71a8ddd15d93b25d86fa63a1dce2ba6a1a9 --- vp9/encoder/vp9_rdopt.c | 12 ------------ vp9/encoder/vp9_speed_features.c | 3 +-- vp9/encoder/vp9_speed_features.h | 5 ----- 3 files changed, 1 insertion(+), 19 deletions(-) diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index 939351d2d..03ea381f0 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -2579,7 +2579,6 @@ int64_t vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, MACROBLOCK *x, int64_t best_inter_rd = INT64_MAX; unsigned int best_pred_sse = UINT_MAX; PREDICTION_MODE best_intra_mode = DC_PRED; - MV_REFERENCE_FRAME best_inter_ref_frame = LAST_FRAME; int rate_uv_intra[TX_SIZES], rate_uv_tokenonly[TX_SIZES]; int64_t dist_uv[TX_SIZES]; int skip_uv[TX_SIZES]; @@ -2799,10 +2798,6 @@ int64_t vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, MACROBLOCK *x, best_mode_index >=0 && best_mbmode.ref_frame[0] == INTRA_FRAME) continue; - if ((mode_search_skip_flags & FLAG_SKIP_COMP_REFMISMATCH) && - ref_frame != best_inter_ref_frame && - second_ref_frame != best_inter_ref_frame) - continue; mode_excluded = cm->reference_mode == SINGLE_REFERENCE; } else { if (ref_frame != INTRA_FRAME) @@ -2965,7 +2960,6 @@ int64_t vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, MACROBLOCK *x, // Keep record of best inter rd with single reference if (!comp_pred && !mode_excluded && this_rd < best_inter_rd) { best_inter_rd = this_rd; - best_inter_ref_frame = ref_frame; } } @@ -3318,7 +3312,6 @@ int64_t vp9_rd_pick_inter_mode_sub8x8(VP9_COMP *cpi, MACROBLOCK *x, unsigned int ref_costs_single[MAX_REF_FRAMES], ref_costs_comp[MAX_REF_FRAMES]; vp9_prob comp_mode_p; int64_t best_inter_rd = INT64_MAX; - MV_REFERENCE_FRAME best_inter_ref_frame = LAST_FRAME; INTERP_FILTER tmp_best_filter = SWITCHABLE; int rate_uv_intra, rate_uv_tokenonly; int64_t dist_uv; @@ -3430,10 +3423,6 @@ int64_t vp9_rd_pick_inter_mode_sub8x8(VP9_COMP *cpi, MACROBLOCK *x, if ((cpi->sf.mode_search_skip_flags & FLAG_SKIP_COMP_BESTINTRA) && vp9_ref_order[best_ref_index].ref_frame[0] == INTRA_FRAME) continue; - if ((cpi->sf.mode_search_skip_flags & FLAG_SKIP_COMP_REFMISMATCH) && - ref_frame != best_inter_ref_frame && - second_ref_frame != best_inter_ref_frame) - continue; } // TODO(jingning, jkoleszar): scaling reference frame not supported for @@ -3712,7 +3701,6 @@ int64_t vp9_rd_pick_inter_mode_sub8x8(VP9_COMP *cpi, MACROBLOCK *x, !mode_excluded && this_rd < best_inter_rd) { best_inter_rd = this_rd; - best_inter_ref_frame = ref_frame; } if (!disable_skip && ref_frame == INTRA_FRAME) { diff --git a/vp9/encoder/vp9_speed_features.c b/vp9/encoder/vp9_speed_features.c index d9ac12262..d0a3c303d 100644 --- a/vp9/encoder/vp9_speed_features.c +++ b/vp9/encoder/vp9_speed_features.c @@ -131,8 +131,7 @@ static void set_good_speed_feature(VP9_COMP *cpi, VP9_COMMON *cm, sf->tx_size_search_method = USE_LARGESTALL; sf->disable_split_mask = DISABLE_ALL_SPLIT; sf->adaptive_rd_thresh = 4; - sf->mode_search_skip_flags |= FLAG_SKIP_COMP_REFMISMATCH | - FLAG_EARLY_TERMINATE; + sf->mode_search_skip_flags |= FLAG_EARLY_TERMINATE; sf->disable_filter_search_var_thresh = 200; sf->use_lastframe_partitioning = LAST_FRAME_PARTITION_ALL; sf->use_lp32x32fdct = 1; diff --git a/vp9/encoder/vp9_speed_features.h b/vp9/encoder/vp9_speed_features.h index 0f49154ff..a56d7de3a 100644 --- a/vp9/encoder/vp9_speed_features.h +++ b/vp9/encoder/vp9_speed_features.h @@ -125,11 +125,6 @@ typedef enum { // Skips comp inter modes if the best so far is an intra mode. FLAG_SKIP_COMP_BESTINTRA = 1 << 1, - // Skips comp inter modes if the best single intermode so far does - // not have the same reference as one of the two references being - // tested. - FLAG_SKIP_COMP_REFMISMATCH = 1 << 2, - // Skips oblique intra modes if the best so far is an inter mode. FLAG_SKIP_INTRA_BESTINTER = 1 << 3, -- 2.40.0