diff --git a/libcelt/pitch.c b/libcelt/pitch.c index 109c76d4163d51448532568d22a6f41f26b4b164..8c1ab9eadced55daea78a61fc0d91546cc23ebe2 100644 --- a/libcelt/pitch.c +++ b/libcelt/pitch.c @@ -276,7 +276,7 @@ celt_word16 remove_doubling(celt_word16 *x, int maxperiod, int minperiod, { celt_word32 x2y2; int sh, t; - x2y2 = HALF32(MULT32_32_Q31(xx,yy)); + x2y2 = 1+HALF32(MULT32_32_Q31(xx,yy)); sh = celt_ilog2(x2y2)>>1; t = VSHR32(x2y2, 2*(sh-7)); g = g0 = VSHR32(MULT16_32_Q15(celt_rsqrt_norm(t), xy),sh+1); @@ -318,7 +318,7 @@ celt_word16 remove_doubling(celt_word16 *x, int maxperiod, int minperiod, { celt_word32 x2y2; int sh, t; - x2y2 = MULT32_32_Q31(xx,yy); + x2y2 = 1+MULT32_32_Q31(xx,yy); sh = celt_ilog2(x2y2)>>1; t = VSHR32(x2y2, 2*(sh-7)); g1 = VSHR32(MULT16_32_Q15(celt_rsqrt_norm(t), xy),sh+1);