| Index: webrtc/modules/audio_processing/audio_processing_impl.h
|
| diff --git a/webrtc/modules/audio_processing/audio_processing_impl.h b/webrtc/modules/audio_processing/audio_processing_impl.h
|
| index 15c6f7572f9a6e5a8fedebd2308676b1b166be43..ecf70957efaac839887054d56719965f492c4b0f 100644
|
| --- a/webrtc/modules/audio_processing/audio_processing_impl.h
|
| +++ b/webrtc/modules/audio_processing/audio_processing_impl.h
|
| @@ -163,13 +163,64 @@ class AudioProcessingImpl : public AudioProcessing {
|
| rtc::scoped_ptr<AudioBuffer> capture_audio_;
|
| rtc::scoped_ptr<AudioConverter> render_converter_;
|
| #ifdef WEBRTC_AUDIOPROC_DEBUG_DUMP
|
| + struct ApmConfig {
|
| + bool operator!=(const ApmConfig &rhs) const {
|
| + return (
|
| + // AEC
|
| + this->aec_enabled != rhs.aec_enabled ||
|
| + this->aec_delay_agnostic != rhs.aec_delay_agnostic ||
|
| + this->aec_drift_compensation != rhs.aec_drift_compensation ||
|
| + this->aec_extended_filter != rhs.aec_extended_filter ||
|
| + this->aec_suppression_level != rhs.aec_suppression_level ||
|
| + // AEC mobile
|
| + this->aecm_enabled != rhs.aecm_enabled ||
|
| + this->aecm_comfort_noise != rhs.aecm_comfort_noise ||
|
| + this->aecm_routing_mode != rhs.aecm_routing_mode ||
|
| + /// AGC
|
| + this->agc_enabled != rhs.agc_enabled ||
|
| + this->agc_experiment != rhs.agc_experiment ||
|
| + this->agc_mode != rhs.agc_mode ||
|
| + this->agc_limiter != rhs.agc_limiter ||
|
| + // HPF
|
| + this->hpf_enabled != rhs.hpf_enabled ||
|
| + // NS
|
| + this->ns_enabled != rhs.ns_enabled ||
|
| + this->ns_experiment != rhs.ns_experiment ||
|
| + this->ns_level != rhs.ns_level);
|
| + }
|
| + // Acoustic echo canceler
|
| + bool aec_enabled;
|
| + bool aec_delay_agnostic;
|
| + bool aec_drift_compensation;
|
| + bool aec_extended_filter;
|
| + EchoCancellation::SuppressionLevel aec_suppression_level;
|
| + // Mobile AEC
|
| + bool aecm_enabled;
|
| + bool aecm_comfort_noise;
|
| + EchoControlMobile::RoutingMode aecm_routing_mode;
|
| + // Automatic gain controller
|
| + bool agc_enabled;
|
| + bool agc_experiment;
|
| + GainControl::Mode agc_mode;
|
| + bool agc_limiter;
|
| + // High pass filter
|
| + bool hpf_enabled;
|
| + // Noise suppression
|
| + bool ns_enabled;
|
| + bool ns_experiment;
|
| + NoiseSuppression::Level ns_level;
|
| + }; // Configurations of APM components.
|
| +
|
| // TODO(andrew): make this more graceful. Ideally we would split this stuff
|
| // out into a separate class with an "enabled" and "disabled" implementation.
|
| int WriteMessageToDebugFile();
|
| int WriteInitMessage();
|
| + int WriteConfigMessage();
|
| + ApmConfig GetCurrentConfig() const;
|
| rtc::scoped_ptr<FileWrapper> debug_file_;
|
| rtc::scoped_ptr<audioproc::Event> event_msg_; // Protobuf message.
|
| std::string event_str_; // Memory for protobuf serialization.
|
| + ApmConfig config_;
|
| #endif
|
|
|
| // Format of processing streams at input/output call sites.
|
|
|