Index: webrtc/modules/audio_processing/test/audio_processing_simulator.h |
diff --git a/webrtc/modules/audio_processing/test/audio_processing_simulator.h b/webrtc/modules/audio_processing/test/audio_processing_simulator.h |
index f597fa101a76e7a1a705464957458308fb1b0f81..671210a8cf2dd2bf249e3d8de22e7062ef490c99 100644 |
--- a/webrtc/modules/audio_processing/test/audio_processing_simulator.h |
+++ b/webrtc/modules/audio_processing/test/audio_processing_simulator.h |
@@ -27,6 +27,10 @@ |
namespace webrtc { |
namespace test { |
+// TODO(alessiob): Check what initial value makes sense, 100 was used in |
+// WavBasedSimulator::last_specified_microphone_level_. |
+constexpr int kInitialMicrophoneGainLevel = 100; |
+ |
// Holds all the parameters available for controlling the simulation. |
struct SimulationSettings { |
SimulationSettings(); |
@@ -74,6 +78,7 @@ struct SimulationSettings { |
rtc::Optional<int> vad_likelihood; |
rtc::Optional<int> ns_level; |
rtc::Optional<bool> use_refined_adaptive_filter; |
+ bool simulate_mic_gain = false; |
bool report_performance = false; |
bool report_bitexactness = false; |
bool use_verbose_logging = false; |
@@ -135,7 +140,8 @@ class AudioProcessingSimulator { |
}; |
TickIntervalStats* mutable_proc_time() { return &proc_time_; } |
- void ProcessStream(bool fixed_interface); |
+ void ProcessStream(bool fixed_interface, |
+ bool update_analog_level = true); |
void ProcessReverseStream(bool fixed_interface); |
void CreateAudioProcessor(); |
void DestroyAudioProcessor(); |
@@ -164,6 +170,7 @@ class AudioProcessingSimulator { |
AudioFrame rev_frame_; |
AudioFrame fwd_frame_; |
bool bitexact_output_ = true; |
+ int last_specified_microphone_level_ = kInitialMicrophoneGainLevel; |
private: |
void SetupOutput(); |