Deprecate diamond search pointer types
The function pointers do not provide additional flexibility. Remove
to clean up the related code.
Change-Id: Id426cdefae0ebd420d0f01ed37fb232df10bda1f
diff --git a/av1/encoder/encoder.h b/av1/encoder/encoder.h
index c0c9255..c7356fa 100644
--- a/av1/encoder/encoder.h
+++ b/av1/encoder/encoder.h
@@ -873,7 +873,6 @@
ActiveMap active_map;
fractional_mv_step_fp *find_fractional_mv_step;
- av1_diamond_search_fn_t diamond_search_sad;
aom_variance_fn_ptr_t fn_ptr[BLOCK_SIZES_ALL];
#if CONFIG_INTERNAL_STATS
diff --git a/av1/encoder/firstpass.c b/av1/encoder/firstpass.c
index aeab7da..0247959 100644
--- a/av1/encoder/firstpass.c
+++ b/av1/encoder/firstpass.c
@@ -239,9 +239,9 @@
}
#endif
// Center the initial step/diamond search on best mv.
- tmp_err = cpi->diamond_search_sad(x, &cpi->ss_cfg[SS_CFG_SRC], &ref_mv_full,
- &tmp_mv, step_param, x->sadperbit16, &num00,
- &v_fn_ptr, ref_mv);
+ tmp_err = av1_diamond_search_sad_c(x, &cpi->ss_cfg[SS_CFG_SRC], &ref_mv_full,
+ &tmp_mv, step_param, x->sadperbit16,
+ &num00, &v_fn_ptr, ref_mv);
if (tmp_err < INT_MAX)
tmp_err = av1_get_mvpred_var(x, &tmp_mv, ref_mv, &v_fn_ptr, 1);
if (tmp_err < INT_MAX - new_mv_mode_penalty) tmp_err += new_mv_mode_penalty;
@@ -261,7 +261,7 @@
if (num00) {
--num00;
} else {
- tmp_err = cpi->diamond_search_sad(
+ tmp_err = av1_diamond_search_sad_c(
x, &cpi->ss_cfg[SS_CFG_SRC], &ref_mv_full, &tmp_mv, step_param + n,
x->sadperbit16, &num00, &v_fn_ptr, ref_mv);
if (tmp_err < INT_MAX)
diff --git a/av1/encoder/mcomp.c b/av1/encoder/mcomp.c
index e091ae8..f771410 100644
--- a/av1/encoder/mcomp.c
+++ b/av1/encoder/mcomp.c
@@ -1776,15 +1776,15 @@
/* do_refine: If last step (1-away) of n-step search doesn't pick the center
point as the best match, we will do a final 1-away diamond
refining search */
-static int full_pixel_diamond(const AV1_COMP *const cpi, MACROBLOCK *x,
- MV *mvp_full, int step_param, int sadpb,
- int further_steps, int do_refine, int *cost_list,
+static int full_pixel_diamond(MACROBLOCK *x, MV *mvp_full, int step_param,
+ int sadpb, int further_steps, int do_refine,
+ int *cost_list,
const aom_variance_fn_ptr_t *fn_ptr,
const MV *ref_mv, const search_site_config *cfg) {
MV temp_mv;
int thissme, n, num00 = 0;
- int bestsme = cpi->diamond_search_sad(x, cfg, mvp_full, &temp_mv, step_param,
- sadpb, &n, fn_ptr, ref_mv);
+ int bestsme = av1_diamond_search_sad_c(x, cfg, mvp_full, &temp_mv, step_param,
+ sadpb, &n, fn_ptr, ref_mv);
if (bestsme < INT_MAX)
bestsme = av1_get_mvpred_var(x, &temp_mv, ref_mv, fn_ptr, 1);
x->best_mv.as_mv = temp_mv;
@@ -1800,8 +1800,8 @@
num00--;
} else {
thissme =
- cpi->diamond_search_sad(x, cfg, mvp_full, &temp_mv, step_param + n,
- sadpb, &num00, fn_ptr, ref_mv);
+ av1_diamond_search_sad_c(x, cfg, mvp_full, &temp_mv, step_param + n,
+ sadpb, &num00, fn_ptr, ref_mv);
if (thissme < INT_MAX)
thissme = av1_get_mvpred_var(x, &temp_mv, ref_mv, fn_ptr, 1);
@@ -2331,7 +2331,7 @@
fn_ptr, 1, ref_mv);
break;
case NSTEP:
- var = full_pixel_diamond(cpi, x, mvp_full, step_param, error_per_bit,
+ var = full_pixel_diamond(x, mvp_full, step_param, error_per_bit,
MAX_MVSEARCH_STEPS - 1 - step_param, 1,
cost_list, fn_ptr, ref_mv, cfg);
break;
diff --git a/av1/encoder/mcomp.h b/av1/encoder/mcomp.h
index 31fbd206..fa8958a 100644
--- a/av1/encoder/mcomp.h
+++ b/av1/encoder/mcomp.h
@@ -122,16 +122,6 @@
extern fractional_mv_step_fp av1_return_max_sub_pixel_mv;
extern fractional_mv_step_fp av1_return_min_sub_pixel_mv;
-typedef int (*av1_full_search_fn_t)(const MACROBLOCK *x, const MV *ref_mv,
- int sad_per_bit, int distance,
- const aom_variance_fn_ptr_t *fn_ptr,
- const MV *center_mv, MV *best_mv);
-
-typedef int (*av1_diamond_search_fn_t)(
- MACROBLOCK *x, const search_site_config *cfg, MV *ref_mv, MV *best_mv,
- int search_param, int sad_per_bit, int *num00,
- const aom_variance_fn_ptr_t *fn_ptr, const MV *center_mv);
-
int av1_refining_search_8p_c(MACROBLOCK *x, int error_per_bit, int search_range,
const aom_variance_fn_ptr_t *fn_ptr,
const uint8_t *mask, int mask_stride,
diff --git a/av1/encoder/speed_features.c b/av1/encoder/speed_features.c
index 9f10dc9..98b3e94 100644
--- a/av1/encoder/speed_features.c
+++ b/av1/encoder/speed_features.c
@@ -958,8 +958,6 @@
sf->partition_search_breakout_dist_thr <<= 2 * (MAX_SB_SIZE_LOG2 - 6);
}
- cpi->diamond_search_sad = av1_diamond_search_sad;
-
sf->allow_exhaustive_searches = 1;
const int mesh_speed = AOMMIN(speed, MAX_MESH_SPEED);