Acoustic echo cancellation
Learn about acoustic echo cancellation on iOS.
Read time 1 minuteLast updated 2 days ago
When an iOS device plays and records audio at the same time, there is the possibility that a capture device could pick up the audio that is playing. The Vivox SDK includes acoustic echo cancellation (AEC), which helps to prevent this type of audio capture from occurring. By default, the Vivox SDK leverages the platform AEC provided by Apple, which is enabled or disabled by using dynamic voice processing switching (DVPS). DVPS is enabled by default. To disable DVPS, initialize the Vivox SDK with the dynamic_voice_processing_switching configuration parameter set to 0.
DVPS uses the following logic for enabling or disabling platform AEC:
- When the client attempts to access the microphone (for example, when joining a session), platform AEC gets enabled.
- When the client stops accessing the microphone (for example, when setting the capture device to IAudioDevices::NullDevice() or when leaving all sessions), platform AEC gets disabled.