28 enum class Error :
int {
30 KUnspecifiedError = -1,
31 KCreationFailedError = -2,
32 KUnsupportedComponentError = -3,
33 KUnsupportedFunctionError = -4,
34 KNullPointerError = -5,
35 KBadParameterError = -6,
36 KBadSampleRateError = -7,
37 KBadDataLengthError = -8,
38 KBadNumberChannelsError = -9,
40 KStreamParameterNotSetError = -11,
41 KNotEnabledError = -12,
42 KBadStreamParameterWarning = -13,
45 enum class NativeRate :
int {
46 KSampleRate8kHz = 8000,
47 KSampleRate16kHz = 16000,
48 KSampleRate32kHz = 32000,
49 KSampleRate48kHz = 48000,
68 struct CaptureLevelAdjustment {
76 struct AnalogMicGainEmulation {
86 AnalogMicGainEmulation& operator=(AnalogMicGainEmulation
const&);
87 AnalogMicGainEmulation(AnalogMicGainEmulation
const&);
88 AnalogMicGainEmulation();
102 CaptureLevelAdjustment& operator=(CaptureLevelAdjustment
const&);
103 CaptureLevelAdjustment(CaptureLevelAdjustment
const&);
104 CaptureLevelAdjustment();
107 struct EchoCanceller {
119 EchoCanceller& operator=(EchoCanceller
const&);
120 EchoCanceller(EchoCanceller
const&);
124 struct GainController1 {
132 enum class Mode :
int {
134 KAdaptiveDigital = 1,
138 struct AnalogGainController {
146 struct ClippingPredictor {
149 enum class Mode :
int {
150 KClippingEventPrediction = 0,
151 KAdaptiveStepClippingPeakPrediction = 1,
152 KFixedStepClippingPeakPrediction = 2,
170 ClippingPredictor& operator=(ClippingPredictor
const&);
171 ClippingPredictor(ClippingPredictor
const&);
190 AnalogGainController& operator=(AnalogGainController
const&);
191 AnalogGainController(AnalogGainController
const&);
192 AnalogGainController();
208 GainController1& operator=(GainController1
const&);
209 GainController1(GainController1
const&);
213 struct GainController2 {
223 struct AdaptiveDigital {
237 AdaptiveDigital& operator=(AdaptiveDigital
const&);
238 AdaptiveDigital(AdaptiveDigital
const&);
242 struct FixedDigital {
251 FixedDigital& operator=(FixedDigital
const&);
252 FixedDigital(FixedDigital
const&);
256 struct InputVolumeController {
265 InputVolumeController& operator=(InputVolumeController
const&);
266 InputVolumeController(InputVolumeController
const&);
267 InputVolumeController();
281 GainController2& operator=(GainController2
const&);
282 GainController2(GainController2
const&);
286 struct HighPassFilter {
296 HighPassFilter& operator=(HighPassFilter
const&);
297 HighPassFilter(HighPassFilter
const&);
301 struct NoiseSuppression {
304 enum class Level :
int {
321 NoiseSuppression& operator=(NoiseSuppression
const&);
322 NoiseSuppression(NoiseSuppression
const&);
329 enum class DownmixMethod :
int {
330 KAverageChannels = 0,
331 KUseFirstChannel = 1,
345 Pipeline& operator=(Pipeline
const&);
346 Pipeline(Pipeline
const&);
350 struct PreAmplifier {
360 PreAmplifier& operator=(PreAmplifier
const&);
361 PreAmplifier(PreAmplifier
const&);
365 struct TransientSuppression {
374 TransientSuppression& operator=(TransientSuppression
const&);
375 TransientSuppression(TransientSuppression
const&);
376 TransientSuppression();
395 Config& operator=(Config
const&);
396 Config(Config
const&);
400 class RuntimeSetting {
408 enum class Type :
int {
411 KCaptureCompressionGain = 2,
412 KCaptureFixedPostGain = 3,
413 KPlayoutVolumeChange = 4,
414 KCustomRenderProcessingRuntimeSetting = 5,
415 KPlayoutAudioDeviceChange = 6,
416 KCapturePostGain = 7,
417 KCaptureOutputUsed = 8,
420 struct PlayoutAudioDeviceInfo {
430 PlayoutAudioDeviceInfo& operator=(PlayoutAudioDeviceInfo
const&);
431 PlayoutAudioDeviceInfo(PlayoutAudioDeviceInfo
const&);
432 PlayoutAudioDeviceInfo();
455 RuntimeSetting& operator=(RuntimeSetting
const&);
456 RuntimeSetting(RuntimeSetting
const&);
465 virtual int Initialize() = 0;
471 virtual int proc_sample_rate_hz()
const = 0;
473 virtual int proc_split_sample_rate_hz()
const = 0;
475 virtual uint64 num_input_channels()
const = 0;
477 virtual uint64 num_proc_channels()
const = 0;
479 virtual uint64 num_output_channels()
const = 0;
481 virtual uint64 num_reverse_channels()
const = 0;
483 virtual void set_output_will_be_muted(
bool) = 0;
495 virtual int ProcessReverseStream(
502 virtual int ProcessReverseStream(
511 virtual bool GetLinearAecOutput(
::rtc::ArrayView<::std::array<float, 160>>)
const = 0;
513 virtual void set_stream_analog_level(
int) = 0;
515 virtual int recommended_stream_analog_level()
const = 0;
517 virtual int set_stream_delay_ms(
int) = 0;
519 virtual int stream_delay_ms()
const = 0;
521 virtual void set_stream_key_pressed(
bool) = 0;
527 virtual void AttachAecDump(::std::unique_ptr<::webrtc::AecDump>) = 0;
529 virtual void DetachAecDump() = 0;
531 virtual ::webrtc::AudioProcessingStats GetStatistics() = 0;
533 virtual ::webrtc::AudioProcessingStats GetStatistics(
bool) = 0;
535 virtual ::webrtc::AudioProcessing::Config GetConfig()
const = 0;