Most visited

Recently visited

Added in API level 16

AcousticEchoCanceler

public class AcousticEchoCanceler
extends AudioEffect

java.lang.Object
   ↳ android.media.audiofx.AudioEffect
     ↳ android.media.audiofx.AcousticEchoCanceler


声学回声消除器(AEC)。

声学回声消除器(AEC)是一种音频预处理,用于从捕获的音频信号中消除从远程方接收的信号的贡献。

语音通信应用(语音聊天,视频会议,SIP呼叫)使用AEC,在远程方接收到的信号中存在显着延迟的回声非常令人不安。 AEC经常与噪声抑制(NS)结合使用。

应用程序创建一个AcousticEchoCanceler对象来实例化并控制音频捕获路径中的AEC引擎。

要将AcousticEchoCanceler附加到特定的AudioRecord ,请在创建AcousticEchoCanceler时指定此AudioRecord的音频会话ID。 通过在AudioRecord实例上调用getAudioSessionId()来检索音频会话。

在某些设备上,根据所使用的MediaRecorder.AudioSource ,平台可以在平台的捕获路径中默认插入AEC。 创建AEC后,应用程序应调用AcousticEchoCanceler.getEnable()以检查特定AudioRecord会话上的默认AEC激活状态。

有关控制音频效果的更多详细信息,请参见 AudioEffect类。

Summary

Inherited constants

From class android.media.audiofx.AudioEffect

Inherited fields

From class android.media.audiofx.AudioEffect

Public methods

static AcousticEchoCanceler create(int audioSession)

创建一个AcousticEchoCanceler并将其附加到指定音频会话的AudioRecord上。

static boolean isAvailable()

检查设备是否实现声学回声消除。

Inherited methods

From class android.media.audiofx.AudioEffect
From class java.lang.Object

Public methods

create

Added in API level 16
AcousticEchoCanceler create (int audioSession)

创建一个AcousticEchoCanceler并将其附加到指定音频会话的AudioRecord上。

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

isAvailable

Added in API level 16
boolean isAvailable ()

检查设备是否实现声学回声消除。

Returns
boolean true if the device implements acoustic echo cancellation, false otherwise.

Hooray!