summaryrefslogtreecommitdiff
path: root/vpx_dsp/arm/subpel_variance_media.c
diff options
context:
space:
mode:
Diffstat (limited to 'vpx_dsp/arm/subpel_variance_media.c')
-rw-r--r--vpx_dsp/arm/subpel_variance_media.c99
1 files changed, 37 insertions, 62 deletions
diff --git a/vpx_dsp/arm/subpel_variance_media.c b/vpx_dsp/arm/subpel_variance_media.c
index e7d8c85fb..ab5336157 100644
--- a/vpx_dsp/arm/subpel_variance_media.c
+++ b/vpx_dsp/arm/subpel_variance_media.c
@@ -14,91 +14,66 @@
#include "vpx_ports/mem.h"
#if HAVE_MEDIA
-static const int16_t bilinear_filters_media[8][2] = {
- { 128, 0 },
- { 112, 16 },
- { 96, 32 },
- { 80, 48 },
- { 64, 64 },
- { 48, 80 },
- { 32, 96 },
- { 16, 112 }
-};
+static const int16_t bilinear_filters_media[8][2] = { { 128, 0 }, { 112, 16 },
+ { 96, 32 }, { 80, 48 },
+ { 64, 64 }, { 48, 80 },
+ { 32, 96 }, { 16, 112 } };
-extern void vpx_filter_block2d_bil_first_pass_media(const uint8_t *src_ptr,
- uint16_t *dst_ptr,
- uint32_t src_pitch,
- uint32_t height,
- uint32_t width,
- const int16_t *filter);
+extern void vpx_filter_block2d_bil_first_pass_media(
+ const uint8_t *src_ptr, uint16_t *dst_ptr, uint32_t src_pitch,
+ uint32_t height, uint32_t width, const int16_t *filter);
-extern void vpx_filter_block2d_bil_second_pass_media(const uint16_t *src_ptr,
- uint8_t *dst_ptr,
- int32_t src_pitch,
- uint32_t height,
- uint32_t width,
- const int16_t *filter);
+extern void vpx_filter_block2d_bil_second_pass_media(
+ const uint16_t *src_ptr, uint8_t *dst_ptr, int32_t src_pitch,
+ uint32_t height, uint32_t width, const int16_t *filter);
-
-unsigned int vpx_sub_pixel_variance8x8_media(const uint8_t *src_ptr,
- int src_pixels_per_line,
- int xoffset, int yoffset,
- const uint8_t *dst_ptr,
- int dst_pixels_per_line,
- unsigned int *sse) {
- uint16_t first_pass[10*8];
- uint8_t second_pass[8*8];
+unsigned int vpx_sub_pixel_variance8x8_media(
+ const uint8_t *src_ptr, int src_pixels_per_line, int xoffset, int yoffset,
+ const uint8_t *dst_ptr, int dst_pixels_per_line, unsigned int *sse) {
+ uint16_t first_pass[10 * 8];
+ uint8_t second_pass[8 * 8];
const int16_t *HFilter, *VFilter;
HFilter = bilinear_filters_media[xoffset];
VFilter = bilinear_filters_media[yoffset];
vpx_filter_block2d_bil_first_pass_media(src_ptr, first_pass,
- src_pixels_per_line,
- 9, 8, HFilter);
- vpx_filter_block2d_bil_second_pass_media(first_pass, second_pass,
- 8, 8, 8, VFilter);
+ src_pixels_per_line, 9, 8, HFilter);
+ vpx_filter_block2d_bil_second_pass_media(first_pass, second_pass, 8, 8, 8,
+ VFilter);
- return vpx_variance8x8_media(second_pass, 8, dst_ptr,
- dst_pixels_per_line, sse);
+ return vpx_variance8x8_media(second_pass, 8, dst_ptr, dst_pixels_per_line,
+ sse);
}
-unsigned int vpx_sub_pixel_variance16x16_media(const uint8_t *src_ptr,
- int src_pixels_per_line,
- int xoffset,
- int yoffset,
- const uint8_t *dst_ptr,
- int dst_pixels_per_line,
- unsigned int *sse) {
- uint16_t first_pass[36*16];
- uint8_t second_pass[20*16];
+unsigned int vpx_sub_pixel_variance16x16_media(
+ const uint8_t *src_ptr, int src_pixels_per_line, int xoffset, int yoffset,
+ const uint8_t *dst_ptr, int dst_pixels_per_line, unsigned int *sse) {
+ uint16_t first_pass[36 * 16];
+ uint8_t second_pass[20 * 16];
const int16_t *HFilter, *VFilter;
unsigned int var;
if (xoffset == 4 && yoffset == 0) {
- var = vpx_variance_halfpixvar16x16_h_media(src_ptr, src_pixels_per_line,
- dst_ptr, dst_pixels_per_line,
- sse);
+ var = vpx_variance_halfpixvar16x16_h_media(
+ src_ptr, src_pixels_per_line, dst_ptr, dst_pixels_per_line, sse);
} else if (xoffset == 0 && yoffset == 4) {
- var = vpx_variance_halfpixvar16x16_v_media(src_ptr, src_pixels_per_line,
- dst_ptr, dst_pixels_per_line,
- sse);
+ var = vpx_variance_halfpixvar16x16_v_media(
+ src_ptr, src_pixels_per_line, dst_ptr, dst_pixels_per_line, sse);
} else if (xoffset == 4 && yoffset == 4) {
- var = vpx_variance_halfpixvar16x16_hv_media(src_ptr, src_pixels_per_line,
- dst_ptr, dst_pixels_per_line,
- sse);
+ var = vpx_variance_halfpixvar16x16_hv_media(
+ src_ptr, src_pixels_per_line, dst_ptr, dst_pixels_per_line, sse);
} else {
HFilter = bilinear_filters_media[xoffset];
VFilter = bilinear_filters_media[yoffset];
- vpx_filter_block2d_bil_first_pass_media(src_ptr, first_pass,
- src_pixels_per_line,
- 17, 16, HFilter);
- vpx_filter_block2d_bil_second_pass_media(first_pass, second_pass,
- 16, 16, 16, VFilter);
+ vpx_filter_block2d_bil_first_pass_media(
+ src_ptr, first_pass, src_pixels_per_line, 17, 16, HFilter);
+ vpx_filter_block2d_bil_second_pass_media(first_pass, second_pass, 16, 16,
+ 16, VFilter);
- var = vpx_variance16x16_media(second_pass, 16, dst_ptr,
- dst_pixels_per_line, sse);
+ var = vpx_variance16x16_media(second_pass, 16, dst_ptr, dst_pixels_per_line,
+ sse);
}
return var;
}