AEC3: Audility: Avoid the initialization of the noise estimator in pure zeroes signals at the render.

Bug: webrtc:9193,chromium:836790
Change-Id: Ic162dd72947f1d075b55df6725a17b66c782930a
Reviewed-on: https://webrtc-review.googlesource.com/73200
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Jesus de Vicente Pena <devicentepena@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23075}
This commit is contained in:
Jesús de Vicente Peña
2018-05-02 09:47:22 +02:00
committed by Commit Bot
parent 3c30c9cb9f
commit 2f2633d90c
4 changed files with 92 additions and 66 deletions

View File

@ -45,14 +45,6 @@ class RenderBuffer {
return spectrum_buffer_->buffer[position];
}
// Get the spectrum directly from an index in the buffer.
rtc::ArrayView<const float> SpectrumAtIndex(int index) const {
RTC_CHECK_LT(index, spectrum_buffer_->size);
int position_bound = std::min(index, spectrum_buffer_->size - 1);
position_bound = std::max(0, position_bound);
return spectrum_buffer_->buffer[position_bound];
}
// Returns the circular fft buffer.
rtc::ArrayView<const FftData> GetFftBuffer() const {
return fft_buffer_->buffer;
@ -65,14 +57,6 @@ class RenderBuffer {
return fft_buffer_->read;
}
// Applies an offset to a buffer index and returns it.
int OffsetSpectrumIndex(int index, int offset) const {
return spectrum_buffer_->OffsetIndex(index, offset);
}
// Returns the write postion in the circular buffer.
int GetWritePositionSpectrum() const { return spectrum_buffer_->write; }
// Returns the sum of the spectrums for a certain number of FFTs.
void SpectralSum(size_t num_spectra,
std::array<float, kFftLengthBy2Plus1>* X2) const;
@ -98,12 +82,13 @@ class RenderBuffer {
return headroom;
}
// Decreases an index that is used for accessing the buffer.
int DecIdx(int idx) const { return spectrum_buffer_->DecIndex(idx); }
// Returns a reference to the spectrum buffer.
const VectorBuffer& GetSpectrumBuffer() const { return *spectrum_buffer_; }
// Returns a reference to the block buffer.
const MatrixBuffer& GetBlockBuffer() const { return *block_buffer_; }
private:
const MatrixBuffer* const block_buffer_;
const VectorBuffer* const spectrum_buffer_;