Added in API level 16

AcousticEchoCanceler


open class AcousticEchoCanceler : AudioEffect
kotlin.Any
   ↳ android.media.audiofx.AudioEffect
   ↳ android.media.audiofx.AcousticEchoCanceler

Acoustic Echo Canceler (AEC).

Acoustic Echo Canceler (AEC) is an audio pre-processor which removes the contribution of the signal received from the remote party from the captured audio signal.

AEC is used by voice communication applications (voice chat, video conferencing, SIP calls) where the presence of echo with significant delay in the signal received from the remote party is highly disturbing. AEC is often used in conjunction with noise suppression (NS).

An application creates an AcousticEchoCanceler object to instantiate and control an AEC engine in the audio capture path.

To attach the AcousticEchoCanceler to a particular android.media.AudioRecord, specify the audio session ID of this AudioRecord when creating the AcousticEchoCanceler. The audio session is retrieved by calling android.media.AudioRecord#getAudioSessionId() on the AudioRecord instance.

On some devices, an AEC can be inserted by default in the capture path by the platform according to the android.media.MediaRecorder.AudioSource used. The application should call AcousticEchoCanceler.getEnable() after creating the AEC to check the default AEC activation state on a particular AudioRecord session.

See android.media.audiofx.AudioEffect class for more details on controlling audio effects.

Summary

Inherited constants
Public methods
open static AcousticEchoCanceler!
create(audioSession: Int)

Creates an AcousticEchoCanceler and attaches it to the AudioRecord on the audio session specified.

open static Boolean

Checks if the device implements acoustic echo cancellation.

Inherited functions
Inherited properties

Public methods

create

Added in API level 16
open static fun create(audioSession: Int): AcousticEchoCanceler!

Creates an AcousticEchoCanceler and attaches it to the AudioRecord on the audio session specified.

Parameters
audioSession Int: system wide unique audio session identifier. The AcousticEchoCanceler will be applied to the AudioRecord with the same audio session.
Return
AcousticEchoCanceler! AcousticEchoCanceler created or null if the device does not implement AEC.

isAvailable

Added in API level 16
open static fun isAvailable(): Boolean

Checks if the device implements acoustic echo cancellation.

Return
Boolean true if the device implements acoustic echo cancellation, false otherwise.