我过去曾使用过此代码:
AudioManager am = (AudioManager) getSystemService(getContext().AUDIO_SERVICE);
am.setParameters("noise_suppression=off");
大致相当于:
NoiseSuppressor ns;
ns = NoiseSuppressor.create(sessionID);
但它将效果应用于所有会话。有没有办法对AcousticEchoCanceler
和AutomaticGainControl
效果做同样的事情?
问题是我试图调整增益的音频会话是由一些外部进程创建的,我无法确定sessionID
,所以我将效果应用于所有会话就足够了,只要它可以在一种类似于am.setParameters("noise_suppression=off");
仅供参考,音频正在由嵌入在我的应用程序(Plivo)中的 VoIP 框架录制,但无法访问流以应用效果。