From c007857ab9cc977a21d0099225e520388342c0d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Per=20=C3=85hgren?= Date: Mon, 2 Oct 2017 14:47:38 +0200 Subject: [PATCH] AEC3 tunings to increase transparency MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This CL fine-tunes the internal AEC3 parameters to increase the transparency of the nearend signal. Bug: webrtc:8322 Change-Id: I2e35165082d88b8f2b1e8367d8ed0e29bd67b4e5 Reviewed-on: https://webrtc-review.googlesource.com/5365 Reviewed-by: Gustaf Ullberg Commit-Queue: Per Ã…hgren Cr-Commit-Position: refs/heads/master@{#20082} --- .../audio_processing/aec3/suppression_gain.cc | 2 +- .../audio_processing/include/audio_processing.h | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/modules/audio_processing/aec3/suppression_gain.cc b/modules/audio_processing/aec3/suppression_gain.cc index 83ae63c95e..9183e9181a 100644 --- a/modules/audio_processing/aec3/suppression_gain.cc +++ b/modules/audio_processing/aec3/suppression_gain.cc @@ -176,7 +176,7 @@ void GainToNoAudibleEcho( const std::array& one_by_echo, std::array* gain) { const float nearend_masking_margin = - low_noise_render ? 0.1f + low_noise_render ? 0.3f : (saturated_echo ? config.param.gain_mask.m2 : config.param.gain_mask.m3); diff --git a/modules/audio_processing/include/audio_processing.h b/modules/audio_processing/include/audio_processing.h index 6baa69118c..21d6018a6f 100644 --- a/modules/audio_processing/include/audio_processing.h +++ b/modules/audio_processing/include/audio_processing.h @@ -279,21 +279,21 @@ class AudioProcessing : public rtc::RefCountInterface { } erle; struct EpStrength { - float lf = 100.f; - float mf = 1000.f; - float hf = 5000.f; + float lf = 10.f; + float mf = 100.f; + float hf = 200.f; float default_len = 0.f; } ep_strength; struct Mask { float m1 = 0.01f; float m2 = 0.001f; - float m3 = 0.01f; - float m4 = 0.1f; + float m3 = 0.02f; // Do not change. + float m4 = 0.3f; } gain_mask; struct EchoAudibility { - float low_render_limit = 192.f; + float low_render_limit = 4 * 64.f; float normal_render_limit = 64.f; float active_render_limit = 100.f; } echo_audibility; @@ -313,8 +313,8 @@ class AudioProcessing : public rtc::RefCountInterface { float min_dec; }; - GainChanges low_noise = {8.f, 8.f, 2.f, 2.f, 4.f, 4.f}; - GainChanges normal = {4.f, 4.f, 2.f, 2.f, 1.2f, 2.f}; + GainChanges low_noise = {8.f, 10.f, 2.f, 4.f, 4.f, 4.f}; + GainChanges normal = {4.f, 10.f, 1.5f, 4.f, 2.f, 4.f}; GainChanges saturation = {1.2f, 1.2f, 1.5f, 1.5f, 1.f, 1.f}; float floor_first_increase = 0.001f;