Index: webrtc/modules/audio_processing/gain_control_for_experimental_agc.cc |
diff --git a/webrtc/modules/audio_processing/gain_control_for_experimental_agc.cc b/webrtc/modules/audio_processing/gain_control_for_experimental_agc.cc |
index 2ef88c03aab3f597f2121d8fd1160d17074e440a..f8063865b63018439669d0f88850061a4fe4c5fe 100644 |
--- a/webrtc/modules/audio_processing/gain_control_for_experimental_agc.cc |
+++ b/webrtc/modules/audio_processing/gain_control_for_experimental_agc.cc |
@@ -13,15 +13,23 @@ |
#include "webrtc/base/checks.h" |
#include "webrtc/base/criticalsection.h" |
#include "webrtc/modules/audio_processing/include/audio_processing.h" |
+#include "webrtc/modules/audio_processing/logging/apm_data_dumper.h" |
namespace webrtc { |
+int GainControlForExperimentalAgc::instance_counter_ = 0; |
+ |
GainControlForExperimentalAgc::GainControlForExperimentalAgc( |
GainControl* gain_control, |
rtc::CriticalSection* crit_capture) |
- : real_gain_control_(gain_control), |
+ : data_dumper_(new ApmDataDumper(instance_counter_)), |
+ real_gain_control_(gain_control), |
volume_(0), |
- crit_capture_(crit_capture) {} |
+ crit_capture_(crit_capture) { |
+ instance_counter_++; |
+} |
+ |
+GainControlForExperimentalAgc::~GainControlForExperimentalAgc() = default; |
int GainControlForExperimentalAgc::Enable(bool enable) { |
return real_gain_control_->Enable(enable); |
@@ -33,12 +41,16 @@ bool GainControlForExperimentalAgc::is_enabled() const { |
int GainControlForExperimentalAgc::set_stream_analog_level(int level) { |
rtc::CritScope cs_capture(crit_capture_); |
+ data_dumper_->DumpRaw("experimental_gain_control_set_stream_analog_level", 1, |
+ &level); |
volume_ = level; |
return AudioProcessing::kNoError; |
} |
int GainControlForExperimentalAgc::stream_analog_level() { |
rtc::CritScope cs_capture(crit_capture_); |
+ data_dumper_->DumpRaw("experimental_gain_control_stream_analog_level", 1, |
+ &volume_); |
return volume_; |
} |
@@ -101,4 +113,8 @@ int GainControlForExperimentalAgc::GetMicVolume() { |
return volume_; |
} |
+void GainControlForExperimentalAgc::Initialize() { |
+ data_dumper_->InitiateNewSetOfRecordings(); |
+} |
+ |
} // namespace webrtc |