summaryrefslogtreecommitdiffstats
path: root/src/modules/echo-cancel/adrian-aec.h
diff options
context:
space:
mode:
authorArun Raghavan <arun.raghavan@collabora.co.uk>2010-09-13 18:41:30 +0530
committerArun Raghavan <arun.raghavan@collabora.co.uk>2010-09-23 17:17:03 +0530
commit83d3c8f22bab997dde81074fd547aef6e56451d5 (patch)
treebf378a032142ff0cde7fc402fd0a4bdf1ff49bc8 /src/modules/echo-cancel/adrian-aec.h
parent963250abb99ab43b209281c2aa5398205492e555 (diff)
echo-cancel: orc-ify some bits for optimisation
This uses Orc to optimise an inner loop in the core NLMS function of the Adrian echo canceller.
Diffstat (limited to 'src/modules/echo-cancel/adrian-aec.h')
-rw-r--r--src/modules/echo-cancel/adrian-aec.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/modules/echo-cancel/adrian-aec.h b/src/modules/echo-cancel/adrian-aec.h
index df9f3e64..235984be 100644
--- a/src/modules/echo-cancel/adrian-aec.h
+++ b/src/modules/echo-cancel/adrian-aec.h
@@ -23,7 +23,7 @@
#define WIDEB 2
// use double if your CPU does software-emulation of float
-typedef float REAL;
+#define REAL float
/* dB Values */
#define M0dB 1.0f
@@ -306,7 +306,7 @@ struct AEC {
// NLMS-pw
REAL x[NLMS_LEN + NLMS_EXT]; // tap delayed loudspeaker signal
REAL xf[NLMS_LEN + NLMS_EXT]; // pre-whitening tap delayed signal
- REAL w[NLMS_LEN]; // tap weights
+ PA_DECLARE_ALIGNED(16, REAL, w[NLMS_LEN]); // tap weights
int j; // optimize: less memory copies
double dotp_xf_xf; // double to avoid loss of precision
float delta; // noise floor to stabilize NLMS