ZDK
Public Member Functions | List of all members
ZDK::IAudioEndpointControl Class Referenceabstract

Audio endpoint's main entry point. More...

#include <IAudioEndpointControl.h>

Inheritance diagram for ZDK::IAudioEndpointControl:
ZDK::IZHandle

Public Member Functions

virtual ZDK::AudioRoutingEndpoint AudioEndpoint () const =0
 Gets the configured audio routing endpoint to be used. More...
 
virtual void AudioEndpoint (ZDK::AudioRoutingEndpoint value)=0
 Configures the audio routing endpoint to be used. More...
 
virtual double MicLevel ()=0
 Gets the configured audio input/microphone level. More...
 
virtual void MicLevel (double value) const =0
 Configures the audio input/microphone level. More...
 
virtual double OutputLevel () const =0
 Gets the configured audio output level. More...
 
virtual void OutputLevel (double value)=0
 Configures the audio output level. More...
 
virtual double RingLevel () const =0
 Gets the configured audio ringing level. More...
 
virtual void RingLevel (double value)=0
 Configures the audio ringing level. More...
 
virtual ZDK::EchoCancellationType EchoCancellation () const =0
 Gets the configured acoustic echo cancellation working mode. More...
 
virtual void EchoCancellation (ZDK::EchoCancellationType value)=0
 Configures the acoustic echo cancellation working mode. More...
 
virtual ZDK::AutomaticGainControlType AutomaticGainControl () const =0
 Gets the configured Automatic Gain Control (AGC) filter working mode. More...
 
virtual void AutomaticGainControl (ZDK::AutomaticGainControlType value)=0
 Configures the Automatic Gain Control (AGC) filter working mode. More...
 
virtual ZDK::AudioSourcePresetType AudioSourcePreset () const =0
 Gets the configured Audio Source Recorder Preset. More...
 
virtual void AudioSourcePreset (ZDK::AudioSourcePresetType value)=0
 Configures the Audio Source Recorder Preset. More...
 
virtual ZDK::Shared::Result HostApi (ZDK::HostAPI value)=0
 Configures the audio host API to be used. More...
 
virtual ZDK::Shared::Result Resampler (ZDK::AudioResampler value)=0
 Configures the audio resampler to be used. More...
 
- Public Member Functions inherited from ZDK::IZHandle
virtual ZDK::ZDKHandle Handle () const =0
 
virtual operator ZDK::ZDKHandle () const =0
 
virtual void Initialize ()=0
 
virtual void ReleaseReference ()=0
 

Detailed Description

Audio endpoint's main entry point.

Entry point for controlling the audio endpoint

Member Function Documentation

◆ AudioEndpoint() [1/2]

virtual ZDK::AudioRoutingEndpoint ZDK::IAudioEndpointControl::AudioEndpoint ( ) const
pure virtual

Gets the configured audio routing endpoint to be used.

Returns
The audio routing endpoint
See also
AudioRoutingEndpoint

◆ AudioEndpoint() [2/2]

virtual void ZDK::IAudioEndpointControl::AudioEndpoint ( ZDK::AudioRoutingEndpoint  value)
pure virtual

Configures the audio routing endpoint to be used.

Parameters
[in]valueThe audio routing endpoint
See also
AudioRoutingEndpoint

◆ AudioSourcePreset() [1/2]

virtual ZDK::AudioSourcePresetType ZDK::IAudioEndpointControl::AudioSourcePreset ( ) const
pure virtual

Gets the configured Audio Source Recorder Preset.

Currently used only for Android's OpenSLES, but this can change in the future.

Returns
The audio source preset
See also
AudioSourcePresetType

◆ AudioSourcePreset() [2/2]

virtual void ZDK::IAudioEndpointControl::AudioSourcePreset ( ZDK::AudioSourcePresetType  value)
pure virtual

Configures the Audio Source Recorder Preset.

Currently used only for Android's OpenSLES, but this can change in the future.

Parameters
[in]valueThe audio source preset
See also
AudioSourcePresetType

◆ AutomaticGainControl() [1/2]

virtual ZDK::AutomaticGainControlType ZDK::IAudioEndpointControl::AutomaticGainControl ( ) const
pure virtual

Gets the configured Automatic Gain Control (AGC) filter working mode.

Works on all platforms. For Desktop platforms the AGC includes both analog and digital adaptive control by controlling the analog gain for the microphone device. For mobile platforms only an adaptive digital gain is applied to the audio coming from the microphone.

The GUI is advised to bar the user from manipulating the hardware gain of the microphone. The GUI can also poll the audio input level via GetAudioInputLevel() once or twice a second.

Returns
The AGC mode
See also
AutomaticGainControlType

◆ AutomaticGainControl() [2/2]

virtual void ZDK::IAudioEndpointControl::AutomaticGainControl ( ZDK::AutomaticGainControlType  value)
pure virtual

Configures the Automatic Gain Control (AGC) filter working mode.

Works on all platforms. For Desktop platforms the AGC includes both analog and digital adaptive control by controlling the analog gain for the microphone device. For mobile platforms only an adaptive digital gain is applied to the audio coming from the microphone.

The GUI is advised to bar the user from manipulating the hardware gain of the microphone. The GUI can also poll the audio input level via GetAudioInputLevel() once or twice a second.

Parameters
[in]valueThe AGC mode
See also
AutomaticGainControlType

◆ EchoCancellation() [1/2]

virtual ZDK::EchoCancellationType ZDK::IAudioEndpointControl::EchoCancellation ( ) const
pure virtual

Gets the configured acoustic echo cancellation working mode.

Default is enabled in software mode.

Returns
The acoustic echo cancellation mode
See also
EchoCancellationType

◆ EchoCancellation() [2/2]

virtual void ZDK::IAudioEndpointControl::EchoCancellation ( ZDK::EchoCancellationType  value)
pure virtual

Configures the acoustic echo cancellation working mode.

Default is enabled in software mode.

Parameters
[in]valueThe acoustic echo cancellation mode
See also
EchoCancellationType

◆ HostApi()

virtual ZDK::Shared::Result ZDK::IAudioEndpointControl::HostApi ( ZDK::HostAPI  value)
pure virtual

Configures the audio host API to be used.

Parameters
[in]valueThe host API
Returns
Result of the invocation
See also
IResult

◆ MicLevel() [1/2]

virtual double ZDK::IAudioEndpointControl::MicLevel ( )
pure virtual

Gets the configured audio input/microphone level.

The volume setting for the input device. Values are between 0.0 (muted) and 1.0 (maximum volume). This is not the measured energy of the input samples.

Returns
The volume setting for the input device between 0.0 and 1.0
See also
OutputLevel(), RingLevel()

◆ MicLevel() [2/2]

virtual void ZDK::IAudioEndpointControl::MicLevel ( double  value) const
pure virtual

Configures the audio input/microphone level.

The volume setting for the input device. Values are between 0.0 (muted) and 1.0 (maximum volume). This is not the measured energy of the input samples.

Parameters
[in]valueThe volume setting for the input device between 0.0 and 1.0
See also
OutputLevel(), RingLevel()

◆ OutputLevel() [1/2]

virtual double ZDK::IAudioEndpointControl::OutputLevel ( ) const
pure virtual

Gets the configured audio output level.

The volume setting for the input device. Values are between 0.0 (muted) and 1.0 (maximum volume). This is not the measured energy of the output samples.

In many cases the ringing device and the output device are the same, so chaning one level will also change and the other.

Returns
The volume setting for the output device between 0.0 and 1.0
See also
MicLevel(), RingLevel()

◆ OutputLevel() [2/2]

virtual void ZDK::IAudioEndpointControl::OutputLevel ( double  value)
pure virtual

Configures the audio output level.

The volume setting for the input device. Values are between 0.0 (muted) and 1.0 (maximum volume). This is not the measured energy of the output samples.

In many cases the ringing device and the output device are the same, so chaning one level will also change and the other.

Parameters
[in]valueThe volume setting for the output device between 0.0 and 1.0
See also
MicLevel(), RingLevel()

◆ Resampler()

virtual ZDK::Shared::Result ZDK::IAudioEndpointControl::Resampler ( ZDK::AudioResampler  value)
pure virtual

Configures the audio resampler to be used.

Selects the resampler to be used by the audio engine. In most cases the native sampling rate of the audio hardware will not match the sampling rate of the active VoIP call. In this case a resampler is employed to do sample rate conversion. Different methods produce different quality and use algorithms of different complexity resulting in different CPU usage. In some cases the resampler cannot be selected.

The default behavior is the audio driver select the reampler.

Parameters
[in]valueThe audio resampler type
Returns
Result of the invocation
See also
AudioResampler, IResult

◆ RingLevel() [1/2]

virtual double ZDK::IAudioEndpointControl::RingLevel ( ) const
pure virtual

Gets the configured audio ringing level.

The volume setting for the ringing device. Values are between 0.0 (muted) and 1.0 (maximum volume). This is not the measured energy of the output samples.

In many cases the ringing device and the output device are the same, so chaning one level will also change and the other.

Returns
The volume setting for the ringing device between 0.0 and 1.0
See also
MicLevel(), OutputLevel()

◆ RingLevel() [2/2]

virtual void ZDK::IAudioEndpointControl::RingLevel ( double  value)
pure virtual

Configures the audio ringing level.

The volume setting for the ringing device. Values are between 0.0 (muted) and 1.0 (maximum volume). This is not the measured energy of the output samples.

In many cases the ringing device and the output device are the same, so chaning one level will also change and the other.

Parameters
[in]valueThe volume setting for the ringing device between 0.0 and 1.0
See also
MicLevel(), OutputLevel()

The documentation for this class was generated from the following file: