summaryrefslogtreecommitdiff
path: root/vp8/encoder/arm/neon
diff options
context:
space:
mode:
authorScott LaVarnway <slavarnway@google.com>2014-05-02 10:31:52 -0700
committerScott LaVarnway <slavarnway@google.com>2014-05-02 10:31:52 -0700
commite516a42527098a26798dbb3663a5bcdd38793839 (patch)
tree2fa81c4dddef147939386cb485d11f98e84d3a84 /vp8/encoder/arm/neon
parentdea687f7337b6a68f4f79ef1fcd611cab53a67a6 (diff)
downloadlibvpx-e516a42527098a26798dbb3663a5bcdd38793839.tar
libvpx-e516a42527098a26798dbb3663a5bcdd38793839.tar.gz
libvpx-e516a42527098a26798dbb3663a5bcdd38793839.tar.bz2
libvpx-e516a42527098a26798dbb3663a5bcdd38793839.zip
Remove struct params from vp8_denoiser_filter
This eliminates the asm_offsets dependency for future all-assembly versions of this function. Change-Id: I3227073ecfcb8ee6e593934fab941e9081abdda0
Diffstat (limited to 'vp8/encoder/arm/neon')
-rw-r--r--vp8/encoder/arm/neon/denoising_neon.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/vp8/encoder/arm/neon/denoising_neon.c b/vp8/encoder/arm/neon/denoising_neon.c
index 23dc0a967..1bebe8fba 100644
--- a/vp8/encoder/arm/neon/denoising_neon.c
+++ b/vp8/encoder/arm/neon/denoising_neon.c
@@ -45,10 +45,12 @@
* [16, 255] 3 6 7
*/
-int vp8_denoiser_filter_neon(YV12_BUFFER_CONFIG *mc_running_avg,
- YV12_BUFFER_CONFIG *running_avg,
- MACROBLOCK *signal, unsigned int motion_magnitude,
- int y_offset, int uv_offset) {
+int vp8_denoiser_filter_neon(unsigned char *mc_running_avg_y,
+ int mc_running_avg_y_stride,
+ unsigned char *running_avg_y,
+ int running_avg_y_stride,
+ unsigned char *sig, int sig_stride,
+ unsigned int motion_magnitude) {
/* If motion_magnitude is small, making the denoiser more aggressive by
* increasing the adjustment for each level, level1 adjustment is
* increased, the deltas stay the same.
@@ -60,14 +62,6 @@ int vp8_denoiser_filter_neon(YV12_BUFFER_CONFIG *mc_running_avg,
const uint8x16_t v_level1_threshold = vdupq_n_u8(4);
const uint8x16_t v_level2_threshold = vdupq_n_u8(8);
const uint8x16_t v_level3_threshold = vdupq_n_u8(16);
-
- /* Local variables for array pointers and strides. */
- unsigned char *sig = signal->thismb;
- int sig_stride = 16;
- unsigned char *mc_running_avg_y = mc_running_avg->y_buffer + y_offset;
- int mc_running_avg_y_stride = mc_running_avg->y_stride;
- unsigned char *running_avg_y = running_avg->y_buffer + y_offset;
- int running_avg_y_stride = running_avg->y_stride;
int64x2_t v_sum_diff_total = vdupq_n_s64(0);
/* Go over lines. */