Commit 29608d84 authored by Alex Converse's avatar Alex Converse
Browse files

variance: Add odd size sse functions

Change-Id: I5eb7870d4b1b83bb907e539528f27f80a42e2fad
parent 19e0c4b6
...@@ -84,6 +84,14 @@ static void variance(const uint8_t *a, int a_stride, const uint8_t *b, ...@@ -84,6 +84,14 @@ static void variance(const uint8_t *a, int a_stride, const uint8_t *b,
} }
} }
uint32_t aom_sse_odd_size(const uint8_t *a, int a_stride, const uint8_t *b,
int b_stride, int w, int h) {
uint32_t sse;
int sum;
variance(a, a_stride, b, b_stride, w, h, &sse, &sum);
return sse;
}
// Applies a 1-D 2-tap bilinear filter to the source block in either horizontal // Applies a 1-D 2-tap bilinear filter to the source block in either horizontal
// or vertical direction to produce the filtered output block. Used to implement // or vertical direction to produce the filtered output block. Used to implement
// the first-pass of 2-D separable filter. // the first-pass of 2-D separable filter.
...@@ -314,6 +322,14 @@ static void highbd_variance64(const uint8_t *a8, int a_stride, ...@@ -314,6 +322,14 @@ static void highbd_variance64(const uint8_t *a8, int a_stride,
} }
} }
uint64_t aom_highbd_sse_odd_size(const uint8_t *a, int a_stride,
const uint8_t *b, int b_stride, int w, int h) {
uint64_t sse;
int64_t sum;
highbd_variance64(a, a_stride, b, b_stride, w, h, &sse, &sum);
return sse;
}
static void highbd_8_variance(const uint8_t *a8, int a_stride, static void highbd_8_variance(const uint8_t *a8, int a_stride,
const uint8_t *b8, int b_stride, int w, int h, const uint8_t *b8, int b_stride, int w, int h,
uint32_t *sse, int *sum) { uint32_t *sse, int *sum) {
......
...@@ -117,6 +117,14 @@ void aom_highbd_var_filter_block2d_bil_second_pass( ...@@ -117,6 +117,14 @@ void aom_highbd_var_filter_block2d_bil_second_pass(
unsigned int output_height, unsigned int output_width, unsigned int output_height, unsigned int output_width,
const uint8_t *filter); const uint8_t *filter);
uint32_t aom_sse_odd_size(const uint8_t *a, int a_stride, const uint8_t *b,
int b_stride, int w, int h);
#if CONFIG_AOM_HIGHBITDEPTH
uint64_t aom_highbd_sse_odd_size(const uint8_t *a, int a_stride,
const uint8_t *b, int b_stride, int w, int h);
#endif // CONFIG_AOM_HIGHBITDEPTH
#ifdef __cplusplus #ifdef __cplusplus
} // extern "C" } // extern "C"
#endif #endif
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment