| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
| 5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
| 6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ | 9 */ |
| 10 | 10 |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 | 63 |
| 64 struct VP9_COMP; | 64 struct VP9_COMP; |
| 65 struct SPEED_FEATURES; | 65 struct SPEED_FEATURES; |
| 66 | 66 |
| 67 int vp9_init_search_range(int size); | 67 int vp9_init_search_range(int size); |
| 68 | 68 |
| 69 // Runs sequence of diamond searches in smaller steps for RD | 69 // Runs sequence of diamond searches in smaller steps for RD |
| 70 int vp9_full_pixel_diamond(const struct VP9_COMP *cpi, MACROBLOCK *x, | 70 int vp9_full_pixel_diamond(const struct VP9_COMP *cpi, MACROBLOCK *x, |
| 71 MV *mvp_full, int step_param, | 71 MV *mvp_full, int step_param, |
| 72 int sadpb, int further_steps, int do_refine, | 72 int sadpb, int further_steps, int do_refine, |
| 73 int *cost_list, |
| 73 const vp9_variance_fn_ptr_t *fn_ptr, | 74 const vp9_variance_fn_ptr_t *fn_ptr, |
| 74 const MV *ref_mv, MV *dst_mv); | 75 const MV *ref_mv, MV *dst_mv); |
| 75 | 76 |
| 76 typedef int (integer_mv_pattern_search_fn) ( | 77 typedef int (integer_mv_pattern_search_fn) ( |
| 77 const MACROBLOCK *x, | 78 const MACROBLOCK *x, |
| 78 MV *ref_mv, | 79 MV *ref_mv, |
| 79 int search_param, | 80 int search_param, |
| 80 int error_per_bit, | 81 int error_per_bit, |
| 81 int do_init_search, | 82 int do_init_search, |
| 82 int *sad_list, | 83 int *cost_list, |
| 83 const vp9_variance_fn_ptr_t *vf, | 84 const vp9_variance_fn_ptr_t *vf, |
| 84 int use_mvcost, | 85 int use_mvcost, |
| 85 const MV *center_mv, | 86 const MV *center_mv, |
| 86 MV *best_mv); | 87 MV *best_mv); |
| 87 | 88 |
| 88 integer_mv_pattern_search_fn vp9_hex_search; | 89 integer_mv_pattern_search_fn vp9_hex_search; |
| 89 integer_mv_pattern_search_fn vp9_bigdia_search; | 90 integer_mv_pattern_search_fn vp9_bigdia_search; |
| 90 integer_mv_pattern_search_fn vp9_square_search; | 91 integer_mv_pattern_search_fn vp9_square_search; |
| 91 integer_mv_pattern_search_fn vp9_fast_hex_search; | 92 integer_mv_pattern_search_fn vp9_fast_hex_search; |
| 92 integer_mv_pattern_search_fn vp9_fast_dia_search; | 93 integer_mv_pattern_search_fn vp9_fast_dia_search; |
| 93 | 94 |
| 94 typedef int (fractional_mv_step_fp) ( | 95 typedef int (fractional_mv_step_fp) ( |
| 95 const MACROBLOCK *x, | 96 const MACROBLOCK *x, |
| 96 MV *bestmv, const MV *ref_mv, | 97 MV *bestmv, const MV *ref_mv, |
| 97 int allow_hp, | 98 int allow_hp, |
| 98 int error_per_bit, | 99 int error_per_bit, |
| 99 const vp9_variance_fn_ptr_t *vfp, | 100 const vp9_variance_fn_ptr_t *vfp, |
| 100 int forced_stop, // 0 - full, 1 - qtr only, 2 - half only | 101 int forced_stop, // 0 - full, 1 - qtr only, 2 - half only |
| 101 int iters_per_step, | 102 int iters_per_step, |
| 102 int *sad_list, | 103 int *cost_list, |
| 103 int *mvjcost, int *mvcost[2], | 104 int *mvjcost, int *mvcost[2], |
| 104 int *distortion, unsigned int *sse1, | 105 int *distortion, unsigned int *sse1, |
| 105 const uint8_t *second_pred, | 106 const uint8_t *second_pred, |
| 106 int w, int h); | 107 int w, int h); |
| 107 | 108 |
| 108 extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree; | 109 extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree; |
| 109 extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree_pruned; | 110 extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree_pruned; |
| 111 extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree_pruned_more; |
| 112 extern fractional_mv_step_fp vp9_find_best_sub_pixel_tree_pruned_evenmore; |
| 110 | 113 |
| 111 typedef int (*vp9_full_search_fn_t)(const MACROBLOCK *x, | 114 typedef int (*vp9_full_search_fn_t)(const MACROBLOCK *x, |
| 112 const MV *ref_mv, int sad_per_bit, | 115 const MV *ref_mv, int sad_per_bit, |
| 113 int distance, | 116 int distance, |
| 114 const vp9_variance_fn_ptr_t *fn_ptr, | 117 const vp9_variance_fn_ptr_t *fn_ptr, |
| 115 const MV *center_mv, MV *best_mv); | 118 const MV *center_mv, MV *best_mv); |
| 116 | 119 |
| 117 typedef int (*vp9_refining_search_fn_t)(const MACROBLOCK *x, | 120 typedef int (*vp9_refining_search_fn_t)(const MACROBLOCK *x, |
| 118 MV *ref_mv, int sad_per_bit, | 121 MV *ref_mv, int sad_per_bit, |
| 119 int distance, | 122 int distance, |
| (...skipping 12 matching lines...) Expand all Loading... |
| 132 MV *ref_mv, int error_per_bit, | 135 MV *ref_mv, int error_per_bit, |
| 133 int search_range, | 136 int search_range, |
| 134 const vp9_variance_fn_ptr_t *fn_ptr, | 137 const vp9_variance_fn_ptr_t *fn_ptr, |
| 135 const MV *center_mv, const uint8_t *second_pred); | 138 const MV *center_mv, const uint8_t *second_pred); |
| 136 | 139 |
| 137 struct VP9_COMP; | 140 struct VP9_COMP; |
| 138 | 141 |
| 139 int vp9_full_pixel_search(struct VP9_COMP *cpi, MACROBLOCK *x, | 142 int vp9_full_pixel_search(struct VP9_COMP *cpi, MACROBLOCK *x, |
| 140 BLOCK_SIZE bsize, MV *mvp_full, | 143 BLOCK_SIZE bsize, MV *mvp_full, |
| 141 int step_param, int error_per_bit, | 144 int step_param, int error_per_bit, |
| 142 int *sad_list, | 145 int *cost_list, |
| 143 const MV *ref_mv, MV *tmp_mv, | 146 const MV *ref_mv, MV *tmp_mv, |
| 144 int var_max, int rd); | 147 int var_max, int rd); |
| 145 | 148 |
| 146 #ifdef __cplusplus | 149 #ifdef __cplusplus |
| 147 } // extern "C" | 150 } // extern "C" |
| 148 #endif | 151 #endif |
| 149 | 152 |
| 150 #endif // VP9_ENCODER_VP9_MCOMP_H_ | 153 #endif // VP9_ENCODER_VP9_MCOMP_H_ |
| OLD | NEW |