From d78dbff09a1b3166fdd5be07b5227179e6e2dfcb Mon Sep 17 00:00:00 2001 From: Deb Mukherjee Date: Tue, 7 Oct 2014 02:48:08 -0700 Subject: Subpel search cleanups and enhancements - Some fixes to surface fit. - Returns variance function as cost rather than sad in the pattern search and diamond search functions. Only vp9_pattern_search_sad function used in bigdia search uses sad as integer 1-away costs. - Deploys SUBPEL_TREE_PRUNED_MORE for speed 4+. Results: derf [Speed 3]: About +0.036% in coding efficiency without any discernible speed loss. derf [Speed 4]: About 2-3% faster at -0.199% loss in coding efficiency. derf [Speed 5]: About 3-4% faster at -0.149% loss in coding efficiency. Change-Id: I8462f94f6adb46966ca964f2bd0400977357fd63 --- vp9/encoder/vp9_pickmode.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'vp9/encoder/vp9_pickmode.c') diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c index 428767a44..a498f8205 100644 --- a/vp9/encoder/vp9_pickmode.c +++ b/vp9/encoder/vp9_pickmode.c @@ -132,7 +132,7 @@ static int combined_motion_search(VP9_COMP *cpi, MACROBLOCK *x, const int tmp_row_min = x->mv_row_min; const int tmp_row_max = x->mv_row_max; int rv = 0; - int sad_list[5]; + int cost_list[5]; const YV12_BUFFER_CONFIG *scaled_ref_frame = vp9_get_scaled_ref_frame(cpi, ref); if (cpi->common.show_frame && @@ -160,7 +160,7 @@ static int combined_motion_search(VP9_COMP *cpi, MACROBLOCK *x, mvp_full.row >>= 3; vp9_full_pixel_search(cpi, x, bsize, &mvp_full, step_param, sadpb, - cond_sad_list(cpi, sad_list), + cond_cost_list(cpi, cost_list), &ref_mv, &tmp_mv->as_mv, INT_MAX, 0); x->mv_col_min = tmp_col_min; @@ -187,7 +187,7 @@ static int combined_motion_search(VP9_COMP *cpi, MACROBLOCK *x, &cpi->fn_ptr[bsize], cpi->sf.mv.subpel_force_stop, cpi->sf.mv.subpel_iters_per_step, - cond_sad_list(cpi, sad_list), + cond_cost_list(cpi, cost_list), x->nmvjointcost, x->mvcost, &dis, &x->pred_sse[ref], NULL, 0, 0); x->pred_mv[ref] = tmp_mv->as_mv; -- cgit v1.2.3