Index: content/renderer/media/media_stream_audio_processor.h |
diff --git a/content/renderer/media/media_stream_audio_processor.h b/content/renderer/media/media_stream_audio_processor.h |
index ed50687ffe20675d62225f04ffe35c4df3ef6479..fa4c8ff71fe1e7c77c3e4fc75a98c7149b9d8bef 100644 |
--- a/content/renderer/media/media_stream_audio_processor.h |
+++ b/content/renderer/media/media_stream_audio_processor.h |
@@ -10,6 +10,7 @@ |
#include "base/gtest_prod_util.h" |
#include "base/macros.h" |
#include "base/memory/ref_counted.h" |
+#include "base/optional.h" |
#include "base/single_thread_task_runner.h" |
#include "base/synchronization/lock.h" |
#include "base/threading/thread_checker.h" |
@@ -121,6 +122,7 @@ class CONTENT_EXPORT MediaStreamAudioProcessor : |
// Called on the main render thread. |
void OnAecDumpFile(const IPC::PlatformFileForTransit& file_handle) override; |
void OnDisableAecDump() override; |
+ void OnAec3Enable(bool enable) override; |
void OnIpcClosing() override; |
// Returns true if MediaStreamAudioProcessor would modify the audio signal, |
@@ -191,6 +193,12 @@ class CONTENT_EXPORT MediaStreamAudioProcessor : |
// Module to handle processing and format conversion. |
std::unique_ptr<webrtc::AudioProcessing> audio_processing_; |
+ bool has_echo_cancellation_; |
+ // When this variable is not set, the use of AEC3 is governed by the Finch |
+ // experiment and/or WebRTC's own default. When set to true/false, Finch and |
+ // WebRTC defaults will be overridden, and AEC3/AEC2 (respectively) will be |
+ // used. |
+ base::Optional<bool> override_aec3_; |
// FIFO to provide 10 ms capture chunks. |
std::unique_ptr<MediaStreamAudioFifo> capture_fifo_; |