From 620e716b764eb643e0a376f64f55448ad9447eb2 Mon Sep 17 00:00:00 2001 From: Jean-Marc Valin Date: Fri, 21 Jan 2011 18:41:48 -0500 Subject: [PATCH] Defining merge_stereo() when S==-M or S==M --- libcelt/bands.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/libcelt/bands.c b/libcelt/bands.c index cb4dc5b6..45680fd4 100644 --- a/libcelt/bands.c +++ b/libcelt/bands.c @@ -346,10 +346,12 @@ static void stereo_merge(celt_norm *X, celt_norm *Y, celt_word16 mid, int N) mid2 = SHR32(mid, 1); El = MULT16_16(mid2, mid2) + side - 2*xp; Er = MULT16_16(mid2, mid2) + side + 2*xp; - if (Er < EPSILON) - Er = EPSILON; - if (El < EPSILON) - El = EPSILON; + if (Er < QCONST32(6e-4f, 28) || El < QCONST32(6e-4f, 28)) + { + for (j=0;j>1;