OLD | NEW |
(Empty) | |
| 1 /* |
| 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
| 3 * |
| 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 |
| 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ |
| 10 |
| 11 |
| 12 #ifndef VP9_ENCODER_VP9_VARIANCE_H_ |
| 13 #define VP9_ENCODER_VP9_VARIANCE_H_ |
| 14 |
| 15 typedef unsigned int(*vp9_sad_fn_t)(const unsigned char *src_ptr, |
| 16 int source_stride, |
| 17 const unsigned char *ref_ptr, |
| 18 int ref_stride, |
| 19 unsigned int max_sad); |
| 20 |
| 21 typedef void (*vp9_copy32xn_fn_t)(const unsigned char *src_ptr, |
| 22 int source_stride, |
| 23 const unsigned char *ref_ptr, |
| 24 int ref_stride, |
| 25 int n); |
| 26 |
| 27 typedef void (*vp9_sad_multi_fn_t)(const unsigned char *src_ptr, |
| 28 int source_stride, |
| 29 const unsigned char *ref_ptr, |
| 30 int ref_stride, |
| 31 unsigned int *sad_array); |
| 32 |
| 33 typedef void (*vp9_sad_multi1_fn_t)(const unsigned char *src_ptr, |
| 34 int source_stride, |
| 35 const unsigned char *ref_ptr, |
| 36 int ref_stride, |
| 37 unsigned short *sad_array); |
| 38 |
| 39 typedef void (*vp9_sad_multi_d_fn_t)(const unsigned char *src_ptr, |
| 40 int source_stride, |
| 41 const unsigned char ** ref_ptr, |
| 42 int ref_stride, unsigned int *sad_array); |
| 43 |
| 44 typedef unsigned int (*vp9_variance_fn_t)(const unsigned char *src_ptr, |
| 45 int source_stride, |
| 46 const unsigned char *ref_ptr, |
| 47 int ref_stride, |
| 48 unsigned int *sse); |
| 49 |
| 50 typedef unsigned int (*vp9_subpixvariance_fn_t)(const unsigned char *src_ptr, |
| 51 int source_stride, |
| 52 int xoffset, |
| 53 int yoffset, |
| 54 const unsigned char *ref_ptr, |
| 55 int Refstride, |
| 56 unsigned int *sse); |
| 57 |
| 58 typedef void (*vp9_ssimpf_fn_t)(unsigned char *s, int sp, unsigned char *r, |
| 59 int rp, unsigned long *sum_s, |
| 60 unsigned long *sum_r, unsigned long *sum_sq_s, |
| 61 unsigned long *sum_sq_r, |
| 62 unsigned long *sum_sxr); |
| 63 |
| 64 typedef unsigned int (*vp9_getmbss_fn_t)(const short *); |
| 65 |
| 66 typedef unsigned int (*vp9_get16x16prederror_fn_t)(const unsigned char *src_ptr, |
| 67 int source_stride, |
| 68 const unsigned char *ref_ptr, |
| 69 int ref_stride); |
| 70 |
| 71 typedef struct variance_vtable { |
| 72 vp9_sad_fn_t sdf; |
| 73 vp9_variance_fn_t vf; |
| 74 vp9_subpixvariance_fn_t svf; |
| 75 vp9_variance_fn_t svf_halfpix_h; |
| 76 vp9_variance_fn_t svf_halfpix_v; |
| 77 vp9_variance_fn_t svf_halfpix_hv; |
| 78 vp9_sad_multi_fn_t sdx3f; |
| 79 vp9_sad_multi1_fn_t sdx8f; |
| 80 vp9_sad_multi_d_fn_t sdx4df; |
| 81 vp9_copy32xn_fn_t copymem; |
| 82 } vp9_variance_fn_ptr_t; |
| 83 |
| 84 #endif |
OLD | NEW |