Index: webrtc/modules/audio_processing/include/audio_processing.h |
diff --git a/webrtc/modules/audio_processing/include/audio_processing.h b/webrtc/modules/audio_processing/include/audio_processing.h |
index 6fa1c96c0771c14d141836dc0c88bf69ec9f5aea..7c16c202fe71d732e82e8f153a31bfa1ca6ad9ab 100644 |
--- a/webrtc/modules/audio_processing/include/audio_processing.h |
+++ b/webrtc/modules/audio_processing/include/audio_processing.h |
@@ -122,6 +122,15 @@ struct AudioProcessing48kHzSupport { |
bool enabled; |
}; |
+// Use to enable intelligibility enhancer in audio processing. Must be provided |
+// though the constructor. It will have no impact if used with |
+// AudioProcessing::SetExtraOptions(). |
+struct Intelligibility { |
+ Intelligibility() : enabled(false) {} |
+ explicit Intelligibility(bool enabled) : enabled(enabled) {} |
+ bool enabled; |
+}; |
+ |
static const int kAudioProcMaxNativeSampleRateHz = 32000; |
// The Audio Processing Module (APM) provides a collection of voice processing |
@@ -323,7 +332,14 @@ class AudioProcessing { |
// of |data| points to a channel buffer, arranged according to |layout|. |
virtual int AnalyzeReverseStream(const float* const* data, |
int samples_per_channel, |
- int sample_rate_hz, |
+ int rev_sample_rate_hz, |
+ ChannelLayout layout) = 0; |
+ |
+ // Same as AnalyzeReverseStream, but may modify |data| if intelligibility |
+ // is enabled. |
+ virtual int ProcessReverseStream(float* const* data, |
+ int samples_per_channel, |
+ int rev_sample_rate_hz, |
ChannelLayout layout) = 0; |
// This must be called if and only if echo processing is enabled. |