AEC3: Fix delay hysteresis validation
The configuration validation checked the wrong hysteresis limit.
Bug: webrtc:8671
Change-Id: Icd49ae612925e306aa4db01afce2d43b75792b9c
Reviewed-on: https://webrtc-review.googlesource.com/c/122461
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Per Ã…hgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26647}
diff --git a/api/audio/echo_canceller3_config.cc b/api/audio/echo_canceller3_config.cc
index 29d31cb..c3053a4 100644
--- a/api/audio/echo_canceller3_config.cc
+++ b/api/audio/echo_canceller3_config.cc
@@ -88,8 +88,8 @@
res = false;
}
if (c->delay.delay_headroom_blocks <= 1 &&
- c->delay.hysteresis_limit_1_blocks == 1) {
- c->delay.hysteresis_limit_1_blocks = 0;
+ c->delay.hysteresis_limit_2_blocks == 1) {
+ c->delay.hysteresis_limit_2_blocks = 0;
res = false;
}
res = res & Limit(&c->delay.default_delay, 0, 5000);
diff --git a/modules/audio_processing/aec3/signal_dependent_erle_estimator_unittest.cc b/modules/audio_processing/aec3/signal_dependent_erle_estimator_unittest.cc
index 7822430..6ce4e97 100644
--- a/modules/audio_processing/aec3/signal_dependent_erle_estimator_unittest.cc
+++ b/modules/audio_processing/aec3/signal_dependent_erle_estimator_unittest.cc
@@ -139,6 +139,7 @@
cfg.filter.main_initial.length_blocks = 1;
cfg.delay.delay_headroom_blocks = 0;
cfg.delay.hysteresis_limit_1_blocks = 0;
+ cfg.delay.hysteresis_limit_2_blocks = 0;
cfg.erle.num_sections = 2;
EXPECT_EQ(EchoCanceller3Config::Validate(&cfg), true);
std::array<float, kFftLengthBy2Plus1> average_erle;