Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/quite/celt.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Marc Valin <jean-marc.valin@usherbrooke.ca>2010-12-09 23:23:45 +0300
committerJean-Marc Valin <jean-marc.valin@usherbrooke.ca>2010-12-09 23:23:45 +0300
commit85bbab0b4a15d144930ce47d8bc1c0d5d99ec371 (patch)
tree05765bd4cc7faf52e115eec5850d361d0166e394
parentfddc521a5cf6ede6d249d028d129f74c7b171568 (diff)
Fixes a fixed-point overflow in stereo angle calculation
-rw-r--r--libcelt/vq.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libcelt/vq.c b/libcelt/vq.c
index e8bb562..b80b65c 100644
--- a/libcelt/vq.c
+++ b/libcelt/vq.c
@@ -381,8 +381,8 @@ int stereo_itheta(celt_norm *X, celt_norm *Y, int stereo, int N)
for (i=0;i<N;i++)
{
celt_norm m, s;
- m = X[i]+Y[i];
- s = X[i]-Y[i];
+ m = ADD16(SHR16(X[i],1),SHR16(Y[i],1));
+ s = SUB16(SHR16(X[i],1),SHR16(Y[i],1));
Emid = MAC16_16(Emid, m, m);
Eside = MAC16_16(Eside, s, s);
}