summaryrefslogtreecommitdiff
path: root/pjmedia/src/pjmedia-codec/speex/filters_arm4.h
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2006-07-26 17:04:54 +0000
committerBenny Prijono <bennylp@teluu.com>2006-07-26 17:04:54 +0000
commit2fa99a7ade8748fae314aeab2fea83e9bc88c36c (patch)
tree689c1cb15f7e7304b955e296748c800ce430542d /pjmedia/src/pjmedia-codec/speex/filters_arm4.h
parentd80219f36636faa876c84b586e7b4b4815767be3 (diff)
- Bring speex codec up to date with their SVN trunk
- Speex codec should work in FIXED_POINT mode when PJ_HAS_FLOATING_POINT is set to zero. - ulaw2linear will return zero if zero is given (this would make the VAD works better, and it also fixed click noise when call is established/hangup). git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@628 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia/src/pjmedia-codec/speex/filters_arm4.h')
-rw-r--r--pjmedia/src/pjmedia-codec/speex/filters_arm4.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/pjmedia/src/pjmedia-codec/speex/filters_arm4.h b/pjmedia/src/pjmedia-codec/speex/filters_arm4.h
index b2503649..ac4d7a93 100644
--- a/pjmedia/src/pjmedia-codec/speex/filters_arm4.h
+++ b/pjmedia/src/pjmedia-codec/speex/filters_arm4.h
@@ -101,6 +101,8 @@ void filter_mem2(const spx_sig_t *x, const spx_coef_t *num, const spx_coef_t *de
int i,j;
spx_sig_t xi,yi,nyi;
+ for (i=0;i<ord;i++)
+ mem[i] = SHR32(mem[i],1);
for (i=0;i<N;i++)
{
int deadm, deadn, deadd, deadidx, x1, y1, dead1, dead2, dead3, dead4, dead5, dead6;
@@ -252,6 +254,8 @@ void filter_mem2(const spx_sig_t *x, const spx_coef_t *num, const spx_coef_t *de
: "cc", "memory");
}
+ for (i=0;i<ord;i++)
+ mem[i] = SHL32(mem[i],1);
}
#define OVERRIDE_IIR_MEM2
@@ -260,6 +264,9 @@ void iir_mem2(const spx_sig_t *x, const spx_coef_t *den, spx_sig_t *y, int N, in
int i,j;
spx_sig_t xi,yi,nyi;
+ for (i=0;i<ord;i++)
+ mem[i] = SHR32(mem[i],1);
+
for (i=0;i<N;i++)
{
int deadm, deadd, deadidx, dead1, dead2, dead3, dead4, dead5, dead6;
@@ -376,4 +383,7 @@ void iir_mem2(const spx_sig_t *x, const spx_coef_t *den, spx_sig_t *y, int N, in
: "cc", "memory");
}
+ for (i=0;i<ord;i++)
+ mem[i] = SHL32(mem[i],1);
+
}