Remove unused disable_wedge_search_edge_thresh
Removed unused disable_wedge_search_edge_thresh speed feature.
Change-Id: I656ab68e64a64444b2be84294af5619a4e0639c3
diff --git a/av1/encoder/block.h b/av1/encoder/block.h
index bda5f7c..75523f1 100644
--- a/av1/encoder/block.h
+++ b/av1/encoder/block.h
@@ -1103,19 +1103,6 @@
*/
int recalc_luma_mc_data;
- /*! \brief Likelihood of an edge existing in the current coding block.
- *
- * The likelihood of an edge existing in the block (using partial Canny edge
- * detection). For reference, 556 is the value returned for a solid
- * vertical black/white edge.
- * The edge strengths are used in wedge_search.
- */
- uint16_t edge_strength;
- //! The strongest edge strength seen along the x axis.
- uint16_t edge_strength_x;
- //! The strongest edge strength seen along the y axis.
- uint16_t edge_strength_y;
-
/*! \brief Data structure to speed up intrabc search.
*
* Contains the hash table, hash function, and buffer used for intrabc.
diff --git a/av1/encoder/compound_type.c b/av1/encoder/compound_type.c
index 6deb4aa..cb1a554 100644
--- a/av1/encoder/compound_type.c
+++ b/av1/encoder/compound_type.c
@@ -100,9 +100,7 @@
const AV1_COMP *const cpi) {
// Enable wedge search if source variance and edge strength are above
// the thresholds.
- return x->source_variance >
- cpi->sf.inter_sf.disable_wedge_search_var_thresh &&
- x->edge_strength > cpi->sf.inter_sf.disable_wedge_search_edge_thresh;
+ return x->source_variance > cpi->sf.inter_sf.disable_wedge_search_var_thresh;
}
static INLINE bool enable_wedge_interinter_search(MACROBLOCK *const x,
diff --git a/av1/encoder/encodeframe.c b/av1/encoder/encodeframe.c
index 4880410..d8b8fd5 100644
--- a/av1/encoder/encodeframe.c
+++ b/av1/encoder/encodeframe.c
@@ -688,20 +688,6 @@
}
}
-static EdgeInfo edge_info(const struct buf_2d *ref, const BLOCK_SIZE bsize,
- const bool high_bd, const int bd) {
- const int width = block_size_wide[bsize];
- const int height = block_size_high[bsize];
- // Implementation requires width to be a multiple of 8. It also requires
- // height to be a multiple of 4, but this is always the case.
- assert(height % 4 == 0);
- if (width % 8 != 0) {
- EdgeInfo ei = { .magnitude = 0, .x = 0, .y = 0 };
- return ei;
- }
- return av1_edge_exists(ref->buf, ref->stride, width, height, high_bd, bd);
-}
-
static int use_pb_simple_motion_pred_sse(const AV1_COMP *const cpi) {
// TODO(debargha, yuec): Not in use, need to implement a speed feature
// utilizing this data point, and replace '0' by the corresponding speed
@@ -806,20 +792,6 @@
&x->simple_motion_pred_sse, &var);
}
- // If the threshold for disabling wedge search is zero, it means the feature
- // should not be used. Use a value that will always succeed in the check.
- if (cpi->sf.inter_sf.disable_wedge_search_edge_thresh == 0) {
- x->edge_strength = UINT16_MAX;
- x->edge_strength_x = UINT16_MAX;
- x->edge_strength_y = UINT16_MAX;
- } else {
- EdgeInfo ei =
- edge_info(&x->plane[0].src, bsize, is_cur_buf_hbd(xd), xd->bd);
- x->edge_strength = ei.magnitude;
- x->edge_strength_x = ei.x;
- x->edge_strength_y = ei.y;
- }
-
// Initialize default mode evaluation params
set_mode_eval_params(cpi, x, DEFAULT_EVAL);
diff --git a/av1/encoder/speed_features.c b/av1/encoder/speed_features.c
index b1318e2..fee7987 100644
--- a/av1/encoder/speed_features.c
+++ b/av1/encoder/speed_features.c
@@ -312,7 +312,6 @@
sf->part_sf.prune_ext_partition_types_search_level = 1;
sf->part_sf.simple_motion_search_prune_rect = 1;
- sf->inter_sf.disable_wedge_search_edge_thresh = 0;
sf->inter_sf.disable_wedge_search_var_thresh = 0;
// TODO(debargha): Test, tweak and turn on either 1 or 2
sf->inter_sf.inter_mode_rd_model_estimation = 1;
@@ -421,7 +420,6 @@
sf->inter_sf.adaptive_rd_thresh = 1;
sf->inter_sf.comp_inter_joint_search_thresh = BLOCK_SIZES_ALL;
sf->inter_sf.disable_interinter_wedge_newmv_search = 1;
- sf->inter_sf.disable_wedge_search_edge_thresh = 0;
sf->inter_sf.disable_wedge_search_var_thresh = 100;
sf->inter_sf.fast_interintra_wedge_search = 1;
sf->inter_sf.fast_wedge_sign_estimate = 1;
@@ -648,7 +646,6 @@
// TODO(debargha): Test, tweak and turn on either 1 or 2
sf->inter_sf.inter_mode_rd_model_estimation = 0;
- sf->inter_sf.disable_wedge_search_edge_thresh = 0;
sf->inter_sf.disable_wedge_search_var_thresh = 0;
sf->inter_sf.model_based_post_interp_filter_breakout = 1;
sf->inter_sf.prune_compound_using_single_ref = 0;
@@ -698,7 +695,6 @@
sf->inter_sf.selective_ref_frame = 2;
sf->inter_sf.skip_repeated_newmv = 1;
sf->inter_sf.disable_wedge_search_var_thresh = 0;
- sf->inter_sf.disable_wedge_search_edge_thresh = 0;
sf->inter_sf.prune_comp_type_by_comp_avg = 1;
sf->inter_sf.prune_motion_mode_level = 2;
sf->inter_sf.prune_single_motion_modes_by_simple_trans = 1;
@@ -731,7 +727,6 @@
sf->inter_sf.adaptive_rd_thresh = 1;
sf->inter_sf.comp_inter_joint_search_thresh = BLOCK_SIZES_ALL;
- sf->inter_sf.disable_wedge_search_edge_thresh = 0;
sf->inter_sf.disable_wedge_search_var_thresh = 100;
sf->inter_sf.fast_wedge_sign_estimate = 1;
sf->inter_sf.prune_comp_type_by_comp_avg = 2;
@@ -1004,7 +999,6 @@
inter_sf->alt_ref_search_fp = 0;
inter_sf->selective_ref_frame = 0;
inter_sf->prune_ref_frame_for_rect_partitions = 0;
- inter_sf->disable_wedge_search_edge_thresh = 0;
inter_sf->disable_wedge_search_var_thresh = 0;
inter_sf->fast_wedge_sign_estimate = 0;
inter_sf->prune_wedge_pred_diff_based = 0;
diff --git a/av1/encoder/speed_features.h b/av1/encoder/speed_features.h
index 09bf5cc..1c2e903 100644
--- a/av1/encoder/speed_features.h
+++ b/av1/encoder/speed_features.h
@@ -624,10 +624,6 @@
// De-couple wedge and mode search during interintra RDO.
int fast_interintra_wedge_search;
- // Only enable wedge search if the edge strength is greater than
- // this threshold. A value of 0 signals that this check is disabled.
- unsigned int disable_wedge_search_edge_thresh;
-
// Only enable wedge search if the variance is above this threshold.
unsigned int disable_wedge_search_var_thresh;