diff options
author | Deb Mukherjee <debargha@google.com> | 2014-10-07 02:48:08 -0700 |
---|---|---|
committer | Deb Mukherjee <debargha@google.com> | 2014-10-08 23:59:43 -0700 |
commit | d78dbff09a1b3166fdd5be07b5227179e6e2dfcb (patch) | |
tree | f8675eb56407fc7be659112f2cb9b53c6e94577b /vp9/encoder/vp9_mcomp.h | |
parent | cfc337aae8dabc2e4e1af28506d58230dc9de5c3 (diff) | |
download | libvpx-d78dbff09a1b3166fdd5be07b5227179e6e2dfcb.tar libvpx-d78dbff09a1b3166fdd5be07b5227179e6e2dfcb.tar.gz libvpx-d78dbff09a1b3166fdd5be07b5227179e6e2dfcb.tar.bz2 libvpx-d78dbff09a1b3166fdd5be07b5227179e6e2dfcb.zip |
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
Diffstat (limited to 'vp9/encoder/vp9_mcomp.h')
-rw-r--r-- | vp9/encoder/vp9_mcomp.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/vp9/encoder/vp9_mcomp.h b/vp9/encoder/vp9_mcomp.h index 3156cb21e..9ddca250c 100644 --- a/vp9/encoder/vp9_mcomp.h +++ b/vp9/encoder/vp9_mcomp.h @@ -80,7 +80,7 @@ typedef int (integer_mv_pattern_search_fn) ( int search_param, int error_per_bit, int do_init_search, - int *sad_list, + int *cost_list, const vp9_variance_fn_ptr_t *vf, int use_mvcost, const MV *center_mv, @@ -100,7 +100,7 @@ typedef int (fractional_mv_step_fp) ( const vp9_variance_fn_ptr_t *vfp, int forced_stop, // 0 - full, 1 - qtr only, 2 - half only int iters_per_step, - int *sad_list, + int *cost_list, int *mvjcost, int *mvcost[2], int *distortion, unsigned int *sse1, const uint8_t *second_pred, @@ -109,7 +109,7 @@ typedef int (fractional_mv_step_fp) ( extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree; extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree_pruned; extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree_pruned_more; -extern fractional_mv_step_fp vp9_find_best_sub_pixel_surface_fit; +extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree_pruned_evenmore; typedef int (*vp9_full_search_fn_t)(const MACROBLOCK *x, const MV *ref_mv, int sad_per_bit, @@ -142,7 +142,7 @@ struct VP9_COMP; int vp9_full_pixel_search(struct VP9_COMP *cpi, MACROBLOCK *x, BLOCK_SIZE bsize, MV *mvp_full, int step_param, int error_per_bit, - int *sad_list, + int *cost_list, const MV *ref_mv, MV *tmp_mv, int var_max, int rd); |