gpt4 book ai didi

android - AudioSource.VOICE_COMMUNICATION 不适用于所有支持 VOICE_COMMUNICATION 的设备

转载 作者:行者123 更新时间:2023-11-29 00:15:44 73 4
gpt4 key购买 nike

我使用 AudioSource.VOICE_COMMUNICATION 作为所有支持此功能的设备的 AudioRecord 实例中的源。这适用于我所有的平板电脑,除了一个。 “Acer Iconia Tab 8”

AcousticEchoCanceler、AutomaticGainControl、NoiseSuppressor 可用。Android 版本为 4.4.2

接收设备只接收带有嗡嗡声的音频数据。如果我使用 AudioSource.MIC 用于不支持 AudioSource.VOICE_COMMUNICATION 的设备的回退,它可以工作,但没有 EchoCancelation 需要并且应该支持这个设备。

final int bufSize = Math.max(1 * 2 * 8000, AudioRecord.getMinBufferSize(8000, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT));
AudioRecord rec;
try {
final int src = MediaRecorder.AudioSource.VOICE_COMMUNICATION;
rec = new AudioRecord(src, 8000, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT, bufSize);
} catch (IllegalArgumentException e) {
Log.d("AudioRecorder", "echo cancellation NOT enabled (old android version)");
final int src = MediaRecorder.AudioSource.MIC;
rec = new AudioRecord(src, 8000, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT, bufSize);
}

有人知道这种奇怪的行为吗?

最佳答案

我遇到了同样的问题,并通过更新 Android 解决了这个问题。

关于android - AudioSource.VOICE_COMMUNICATION 不适用于所有支持 VOICE_COMMUNICATION 的设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27019105/

73 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com