AudioProcessingImpl: Move analog gain change check

Move the check for analog gain changes so that it can be used
independently of echo_controller. This change is needed to land
https://webrtc-review.googlesource.com/c/src/+/234140.

Bug: webrtc:12774
Change-Id: I9ea127b0a4d374f31493d6f8afcacee40fa9257c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/234383
Commit-Queue: Hanna Silen <silen@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35159}
diff --git a/modules/audio_processing/audio_processing_impl.cc b/modules/audio_processing/audio_processing_impl.cc
index 1668539..d7fbfb6 100644
--- a/modules/audio_processing/audio_processing_impl.cc
+++ b/modules/audio_processing/audio_processing_impl.cc
@@ -1146,13 +1146,15 @@
                                 levels.peak, 1, RmsLevel::kMinLevelDb, 64);
   }
 
+  // Detect an analog gain change.
+  int analog_mic_level = recommended_stream_analog_level_locked();
+  const bool analog_mic_level_changed =
+      capture_.prev_analog_mic_level != analog_mic_level &&
+      capture_.prev_analog_mic_level != -1;
+  capture_.prev_analog_mic_level = analog_mic_level;
+
   if (submodules_.echo_controller) {
-    // Detect and flag any change in the analog gain.
-    int analog_mic_level = recommended_stream_analog_level_locked();
-    capture_.echo_path_gain_change =
-        capture_.prev_analog_mic_level != analog_mic_level &&
-        capture_.prev_analog_mic_level != -1;
-    capture_.prev_analog_mic_level = analog_mic_level;
+    capture_.echo_path_gain_change = analog_mic_level_changed;
 
     // Detect and flag any change in the capture level adjustment pre-gain.
     if (submodules_.capture_levels_adjuster) {