Index: source/libvpx/vp9/encoder/vp9_mcomp.c |
diff --git a/source/libvpx/vp9/encoder/vp9_mcomp.c b/source/libvpx/vp9/encoder/vp9_mcomp.c |
index 6a02481fa5aa9618d064045c74fcd5e8d249a4fe..b8423aa67f09905831e058ec1102178657a56a37 100644 |
--- a/source/libvpx/vp9/encoder/vp9_mcomp.c |
+++ b/source/libvpx/vp9/encoder/vp9_mcomp.c |
@@ -1371,15 +1371,15 @@ int vp9_get_mvpred_av_var(const MACROBLOCK *x, |
x->mvcost, x->errorperbit) : 0); |
} |
-int vp9_hex_search(const MACROBLOCK *x, |
- MV *ref_mv, |
- int search_param, |
- int sad_per_bit, |
- int do_init_search, |
- int *cost_list, |
- const vp9_variance_fn_ptr_t *vfp, |
- int use_mvcost, |
- const MV *center_mv, MV *best_mv) { |
+static int hex_search(const MACROBLOCK *x, |
+ MV *ref_mv, |
+ int search_param, |
+ int sad_per_bit, |
+ int do_init_search, |
+ int *cost_list, |
+ const vp9_variance_fn_ptr_t *vfp, |
+ int use_mvcost, |
+ const MV *center_mv, MV *best_mv) { |
// First scale has 8-closest points, the rest have 6 points in hex shape |
// at increasing scales |
static const int hex_num_candidates[MAX_PATTERN_SCALES] = { |
@@ -1406,16 +1406,16 @@ int vp9_hex_search(const MACROBLOCK *x, |
hex_num_candidates, hex_candidates); |
} |
-int vp9_bigdia_search(const MACROBLOCK *x, |
- MV *ref_mv, |
- int search_param, |
- int sad_per_bit, |
- int do_init_search, |
- int *cost_list, |
- const vp9_variance_fn_ptr_t *vfp, |
- int use_mvcost, |
- const MV *center_mv, |
- MV *best_mv) { |
+static int bigdia_search(const MACROBLOCK *x, |
+ MV *ref_mv, |
+ int search_param, |
+ int sad_per_bit, |
+ int do_init_search, |
+ int *cost_list, |
+ const vp9_variance_fn_ptr_t *vfp, |
+ int use_mvcost, |
+ const MV *center_mv, |
+ MV *best_mv) { |
// First scale has 4-closest points, the rest have 8 points in diamond |
// shape at increasing scales |
static const int bigdia_num_candidates[MAX_PATTERN_SCALES] = { |
@@ -1448,16 +1448,16 @@ int vp9_bigdia_search(const MACROBLOCK *x, |
bigdia_num_candidates, bigdia_candidates); |
} |
-int vp9_square_search(const MACROBLOCK *x, |
- MV *ref_mv, |
- int search_param, |
- int sad_per_bit, |
- int do_init_search, |
- int *cost_list, |
- const vp9_variance_fn_ptr_t *vfp, |
- int use_mvcost, |
- const MV *center_mv, |
- MV *best_mv) { |
+static int square_search(const MACROBLOCK *x, |
+ MV *ref_mv, |
+ int search_param, |
+ int sad_per_bit, |
+ int do_init_search, |
+ int *cost_list, |
+ const vp9_variance_fn_ptr_t *vfp, |
+ int use_mvcost, |
+ const MV *center_mv, |
+ MV *best_mv) { |
// All scales have 8 closest points in square shape |
static const int square_num_candidates[MAX_PATTERN_SCALES] = { |
8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, |
@@ -1490,32 +1490,32 @@ int vp9_square_search(const MACROBLOCK *x, |
square_num_candidates, square_candidates); |
} |
-int vp9_fast_hex_search(const MACROBLOCK *x, |
- MV *ref_mv, |
- int search_param, |
- int sad_per_bit, |
- int do_init_search, // must be zero for fast_hex |
- int *cost_list, |
- const vp9_variance_fn_ptr_t *vfp, |
- int use_mvcost, |
- const MV *center_mv, |
- MV *best_mv) { |
- return vp9_hex_search(x, ref_mv, VPXMAX(MAX_MVSEARCH_STEPS - 2, search_param), |
- sad_per_bit, do_init_search, cost_list, vfp, use_mvcost, |
- center_mv, best_mv); |
+static int fast_hex_search(const MACROBLOCK *x, |
+ MV *ref_mv, |
+ int search_param, |
+ int sad_per_bit, |
+ int do_init_search, // must be zero for fast_hex |
+ int *cost_list, |
+ const vp9_variance_fn_ptr_t *vfp, |
+ int use_mvcost, |
+ const MV *center_mv, |
+ MV *best_mv) { |
+ return hex_search(x, ref_mv, VPXMAX(MAX_MVSEARCH_STEPS - 2, search_param), |
+ sad_per_bit, do_init_search, cost_list, vfp, use_mvcost, |
+ center_mv, best_mv); |
} |
-int vp9_fast_dia_search(const MACROBLOCK *x, |
- MV *ref_mv, |
- int search_param, |
- int sad_per_bit, |
- int do_init_search, |
- int *cost_list, |
- const vp9_variance_fn_ptr_t *vfp, |
- int use_mvcost, |
- const MV *center_mv, |
- MV *best_mv) { |
- return vp9_bigdia_search( |
+static int fast_dia_search(const MACROBLOCK *x, |
+ MV *ref_mv, |
+ int search_param, |
+ int sad_per_bit, |
+ int do_init_search, |
+ int *cost_list, |
+ const vp9_variance_fn_ptr_t *vfp, |
+ int use_mvcost, |
+ const MV *center_mv, |
+ MV *best_mv) { |
+ return bigdia_search( |
x, ref_mv, VPXMAX(MAX_MVSEARCH_STEPS - 2, search_param), sad_per_bit, |
do_init_search, cost_list, vfp, use_mvcost, center_mv, best_mv); |
} |
@@ -1946,15 +1946,16 @@ unsigned int vp9_int_pro_motion_estimation(const VP9_COMP *cpi, MACROBLOCK *x, |
return best_sad; |
} |
+// Runs sequence of diamond searches in smaller steps for RD. |
/* 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 */ |
-int vp9_full_pixel_diamond(const VP9_COMP *cpi, MACROBLOCK *x, |
- MV *mvp_full, int step_param, |
- int sadpb, int further_steps, int do_refine, |
- int *cost_list, |
- const vp9_variance_fn_ptr_t *fn_ptr, |
- const MV *ref_mv, MV *dst_mv) { |
+static int full_pixel_diamond(const VP9_COMP *cpi, MACROBLOCK *x, |
+ MV *mvp_full, int step_param, |
+ int sadpb, int further_steps, int do_refine, |
+ int *cost_list, |
+ const vp9_variance_fn_ptr_t *fn_ptr, |
+ const MV *ref_mv, MV *dst_mv) { |
MV temp_mv; |
int thissme, n, num00 = 0; |
int bestsme = cpi->diamond_search_sad(x, &cpi->ss_cfg, mvp_full, &temp_mv, |
@@ -2346,29 +2347,29 @@ int vp9_full_pixel_search(VP9_COMP *cpi, MACROBLOCK *x, |
switch (method) { |
case FAST_DIAMOND: |
- var = vp9_fast_dia_search(x, mvp_full, step_param, error_per_bit, 0, |
- cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
+ var = fast_dia_search(x, mvp_full, step_param, error_per_bit, 0, |
+ cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
break; |
case FAST_HEX: |
- var = vp9_fast_hex_search(x, mvp_full, step_param, error_per_bit, 0, |
- cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
+ var = fast_hex_search(x, mvp_full, step_param, error_per_bit, 0, |
+ cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
break; |
case HEX: |
- var = vp9_hex_search(x, mvp_full, step_param, error_per_bit, 1, |
- cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
+ var = hex_search(x, mvp_full, step_param, error_per_bit, 1, |
+ cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
break; |
case SQUARE: |
- var = vp9_square_search(x, mvp_full, step_param, error_per_bit, 1, |
- cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
+ var = square_search(x, mvp_full, step_param, error_per_bit, 1, |
+ cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
break; |
case BIGDIA: |
- var = vp9_bigdia_search(x, mvp_full, step_param, error_per_bit, 1, |
- cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
+ var = bigdia_search(x, mvp_full, step_param, error_per_bit, 1, |
+ cost_list, fn_ptr, 1, ref_mv, tmp_mv); |
break; |
case NSTEP: |
- var = vp9_full_pixel_diamond(cpi, x, mvp_full, step_param, error_per_bit, |
- MAX_MVSEARCH_STEPS - 1 - step_param, |
- 1, cost_list, fn_ptr, ref_mv, tmp_mv); |
+ var = full_pixel_diamond(cpi, x, mvp_full, step_param, error_per_bit, |
+ MAX_MVSEARCH_STEPS - 1 - step_param, |
+ 1, cost_list, fn_ptr, ref_mv, tmp_mv); |
break; |
default: |
assert(0 && "Invalid search method."); |