| Index: webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h
|
| diff --git a/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h b/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h
|
| index d77cbcae15ecd7569233635d5f1e689769625b66..6fae158dc8938ef5a6969a29a4cb0bb5aa697c0d 100644
|
| --- a/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h
|
| +++ b/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h
|
| @@ -119,6 +119,12 @@ class AdaptiveFirFilter {
|
| return H2_;
|
| }
|
|
|
| + // Returns the estimate of the impulse response.
|
| + const std::array<float, kAdaptiveFilterTimeDomainLength>&
|
| + FilterImpulseResponse() const {
|
| + return h_;
|
| + }
|
| +
|
| void DumpFilter(const char* name) {
|
| for (auto& H : H_) {
|
| data_dumper_->DumpRaw(name, H.re);
|
| @@ -127,11 +133,15 @@ class AdaptiveFirFilter {
|
| }
|
|
|
| private:
|
| + // Constrain the filter partitions in a cyclic manner.
|
| + void Constrain();
|
| +
|
| ApmDataDumper* const data_dumper_;
|
| const Aec3Fft fft_;
|
| const Aec3Optimization optimization_;
|
| std::vector<FftData> H_;
|
| std::vector<std::array<float, kFftLengthBy2Plus1>> H2_;
|
| + std::array<float, kAdaptiveFilterTimeDomainLength> h_;
|
| std::array<float, kFftLengthBy2Plus1> erl_;
|
| size_t partition_to_constrain_ = 0;
|
|
|
|
|