Loading lib_dec/ivas_stereo_cng_dec.c +6 −2 Original line number Diff line number Diff line Loading @@ -1319,13 +1319,17 @@ static void stereo_dft_generate_comfort_noise_fx( { /* Real part in FFT bins */ rand_gauss_fx( ptr_r, &st->hTdCngDec->cng_seed, q_dft ); tmp = Mpy_32_16_1( Sqrt32( *ptr_level, &q_sqrt ), scale ); ( *ptr_r ) = Mpy_32_32( *ptr_r, tmp ); q_sqrt = sub( Q31, q_cngNoiseLevel ); tmp = Sqrt32( *ptr_level, &q_sqrt ); tmp = Mpy_32_16_1( tmp, scale ); // 15 + q_sqrt ( *ptr_r ) = Mpy_32_32( *ptr_r, tmp ); // q_dft + 15 + q_sqrt - 31 ( *ptr_r ) = L_shl_sat( ( *ptr_r ), add( 15, q_sqrt ) ); move32(); ptr_r += 2; /* Imaginary part in FFT bins */ rand_gauss_fx( ptr_i, &st->hTdCngDec->cng_seed, q_dft ); ( *ptr_i ) = Mpy_32_32( *ptr_i, tmp ); ( *ptr_i ) = L_shl_sat( ( *ptr_i ), add( 15, q_sqrt ) ); move32(); ptr_i += 2; } Loading Loading
lib_dec/ivas_stereo_cng_dec.c +6 −2 Original line number Diff line number Diff line Loading @@ -1319,13 +1319,17 @@ static void stereo_dft_generate_comfort_noise_fx( { /* Real part in FFT bins */ rand_gauss_fx( ptr_r, &st->hTdCngDec->cng_seed, q_dft ); tmp = Mpy_32_16_1( Sqrt32( *ptr_level, &q_sqrt ), scale ); ( *ptr_r ) = Mpy_32_32( *ptr_r, tmp ); q_sqrt = sub( Q31, q_cngNoiseLevel ); tmp = Sqrt32( *ptr_level, &q_sqrt ); tmp = Mpy_32_16_1( tmp, scale ); // 15 + q_sqrt ( *ptr_r ) = Mpy_32_32( *ptr_r, tmp ); // q_dft + 15 + q_sqrt - 31 ( *ptr_r ) = L_shl_sat( ( *ptr_r ), add( 15, q_sqrt ) ); move32(); ptr_r += 2; /* Imaginary part in FFT bins */ rand_gauss_fx( ptr_i, &st->hTdCngDec->cng_seed, q_dft ); ( *ptr_i ) = Mpy_32_32( *ptr_i, tmp ); ( *ptr_i ) = L_shl_sat( ( *ptr_i ), add( 15, q_sqrt ) ); move32(); ptr_i += 2; } Loading