Separated the NLP behavior in AEC3 for different echo estimates.

This CL separates the NLP gain computation for the different variants
of echo estimation. This simplifies the setting of tuning 
parameters, with resulting transparency improvements and increased
echo removal performance.

Bug: webrtc:8359
Change-Id: I9b97064396fb6f6e2f418ce534573f68694390a1
Reviewed-on: https://webrtc-review.googlesource.com/7613
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20209}
diff --git a/modules/audio_processing/include/audio_processing.h b/modules/audio_processing/include/audio_processing.h
index 665760c0..9d2efb2 100644
--- a/modules/audio_processing/include/audio_processing.h
+++ b/modules/audio_processing/include/audio_processing.h
@@ -296,6 +296,7 @@
           float m4 = 0.3f;
           float m5 = 0.3f;
           float m6 = 0.0001f;
+          float m7 = 0.01f;
         } gain_mask;
 
         struct EchoAudibility {
@@ -322,6 +323,7 @@
           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};
+          GainChanges nonlinear = {1.5f, 1.5f, 1.2f, 1.2f, 1.1f, 1.1f};
 
           float floor_first_increase = 0.001f;
         } gain_updates;