diff --git a/modules/audio_processing/agc2/rnn_vad/lp_residual.cc b/modules/audio_processing/agc2/rnn_vad/lp_residual.cc index dd9212f838..e62bcc425c 100644 --- a/modules/audio_processing/agc2/rnn_vad/lp_residual.cc +++ b/modules/audio_processing/agc2/rnn_vad/lp_residual.cc @@ -40,9 +40,13 @@ void DenoiseAutoCorrelation( rtc::ArrayView auto_corr) { // Assume -40 dB white noise floor. auto_corr[0] *= 1.0001f; - for (size_t i = 1; i < kNumLpcCoefficients; ++i) { - auto_corr[i] -= auto_corr[i] * (0.008f * i) * (0.008f * i); - } + // Hard-coded values obtained as + // [np.float32((0.008*0.008*i*i)) for i in range(1,5)]. + auto_corr[1] -= auto_corr[1] * 0.000064f; + auto_corr[2] -= auto_corr[2] * 0.000256f; + auto_corr[3] -= auto_corr[3] * 0.000576f; + auto_corr[4] -= auto_corr[4] * 0.001024f; + static_assert(kNumLpcCoefficients == 5, "Update `auto_corr`."); } // Computes the initial inverse filter coefficients given the auto-correlation