Chromium Code Reviews| 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 { |
|
Andrew MacDonald
2015/09/26 02:36:19
Why do you need this thing?
minyue-webrtc
2015/09/26 16:26:44
Ivo had a good suggestion. It is now removed
|
| + bool operator!=(const ApmConfig &rhs) const { |
| + return ( |
| + // AEC |
|
peah-webrtc
2015/09/25 10:27:38
I think the style guide says that comments should
|
| + 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. |