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 aec4ed7086d992b3bcb01d154a5d49f1dc392406..b941398a45d61ae4818e47d24b7e8adab2eb28da 100644 |
| --- a/webrtc/modules/audio_processing/audio_processing_impl.h |
| +++ b/webrtc/modules/audio_processing/audio_processing_impl.h |
| @@ -17,6 +17,7 @@ |
| #include <vector> |
| #include "webrtc/base/criticalsection.h" |
| +#include "webrtc/base/function_view.h" |
| #include "webrtc/base/gtest_prod_util.h" |
| #include "webrtc/base/ignore_wundef.h" |
| #include "webrtc/base/swap_queue.h" |
| @@ -124,11 +125,16 @@ class AudioProcessingImpl : public AudioProcessing { |
| EchoCancellation* echo_cancellation() const override; |
| EchoControlMobile* echo_control_mobile() const override; |
| GainControl* gain_control() const override; |
| + // TODO(peah): Deprecate this API call. |
| HighPassFilter* high_pass_filter() const override; |
| LevelEstimator* level_estimator() const override; |
| NoiseSuppression* noise_suppression() const override; |
| VoiceDetection* voice_detection() const override; |
| + // TODO(peah): Remove these two methods once the new API allows that. |
| + void MutateConfig(std::function<void(AudioProcessing::Config*)> mutator); |
| + AudioProcessing::Config GetConfig() const; |
| + |
| protected: |
| // Overridden in a mock. |
| virtual int InitializeLocked() |
| @@ -143,11 +149,14 @@ class AudioProcessingImpl : public AudioProcessing { |
| struct ApmPublicSubmodules; |
| struct ApmPrivateSubmodules; |
| + // Submodule interface implementations. |
| + std::unique_ptr<HighPassFilter> high_pass_filter_impl_; |
| + |
| class ApmSubmoduleStates { |
| public: |
| ApmSubmoduleStates(); |
| // Updates the submodule state and returns true if it has changed. |
| - bool Update(bool high_pass_filter_enabled, |
| + bool Update(bool low_cut_filter_enabled, |
|
the sun
2016/10/28 12:38:32
I'm not so sure about this use of low cut vs high
peah-webrtc
2016/10/28 12:47:46
I agree that it is confusing. But I think using th
|
| bool echo_canceller_enabled, |
| bool mobile_echo_controller_enabled, |
| bool noise_suppressor_enabled, |
| @@ -164,7 +173,7 @@ class AudioProcessingImpl : public AudioProcessing { |
| bool RenderMultiBandProcessingActive() const; |
| private: |
| - bool high_pass_filter_enabled_ = false; |
| + bool low_cut_filter_enabled_ = false; |
| bool echo_canceller_enabled_ = false; |
| bool mobile_echo_controller_enabled_ = false; |
| bool noise_suppressor_enabled_ = false; |
| @@ -234,6 +243,7 @@ class AudioProcessingImpl : public AudioProcessing { |
| int InitializeLocked(const ProcessingConfig& config) |
| EXCLUSIVE_LOCKS_REQUIRED(crit_render_, crit_capture_); |
| void InitializeLevelController() EXCLUSIVE_LOCKS_REQUIRED(crit_capture_); |
| + void InitializeLowCutFilter() EXCLUSIVE_LOCKS_REQUIRED(crit_capture_); |
| void EmptyQueuedRenderAudio(); |
| void AllocateRenderQueue() |