Improving support for Android Audio Effects in WebRTC.
Now also supports AGC and NS effects and adds the possibility
to override default settings.
R=magjed@webrtc.org, pbos@webrtc.org, sophiechang@chromium.org
TBR=perkj
BUG=NONE
Review URL: https://codereview.webrtc.org/1344563002 .
Cr-Commit-Position: refs/heads/master@{#10030}
diff --git a/webrtc/modules/audio_device/include/audio_device.h b/webrtc/modules/audio_device/include/audio_device.h
index 1826e0e..c2c2b88 100644
--- a/webrtc/modules/audio_device/include/audio_device.h
+++ b/webrtc/modules/audio_device/include/audio_device.h
@@ -187,18 +187,14 @@
// Only supported on Android.
// TODO(henrika): Make pure virtual after updating Chromium.
virtual bool BuiltInAECIsAvailable() const { return false; }
+ virtual bool BuiltInAGCIsAvailable() const { return false; }
+ virtual bool BuiltInNSIsAvailable() const { return false; }
- // Enables the built-in AEC. Only supported on Windows and Android.
- //
- // For usage on Windows (requires Core Audio):
- // Must be called before InitRecording(). When enabled:
- // 1. StartPlayout() must be called before StartRecording().
- // 2. StopRecording() should be called before StopPlayout().
- // The reverse order may cause garbage audio to be rendered or the
- // capture side to halt until StopRecording() is called.
+ // Enables the built-in audio effects. Only supported on Android.
// TODO(henrika): Make pure virtual after updating Chromium.
virtual int32_t EnableBuiltInAEC(bool enable) { return -1; }
-
+ virtual int32_t EnableBuiltInAGC(bool enable) { return -1; }
+ virtual int32_t EnableBuiltInNS(bool enable) { return -1; }
// Don't use.
virtual bool BuiltInAECIsEnabled() const { return false; }