gpt4 book ai didi

android - 使用 MediaRecorder.AudioSource.VOICE_COMMUNICATION 录制的音频在某些搭载 Android 10 的设备上为空

转载 作者:行者123 更新时间:2023-12-03 13:26:11 25 4
gpt4 key购买 nike

我正在使用以下代码在应用程序中录制语音消息的音频。

MediaRecorder audioRecorder = new MediaRecorder();
audioRecorder.setAudioSource(MediaRecorder.AudioSource.VOICE_COMMUNICATION);
audioRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
audioRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.HE_AAC);
audioRecorder.setOutputFile(audioRecordingFile);
audioRecorder.prepare();
audioRecorder.start();

使用 MediaRecorder.AudioSource.VOICE_COMMUNICATION 而不是 MediaRecorder.AudioSource.MIC) 对于录制预处理干净的音频非常有帮助。

但是,最近我发现一些最近更新到 Android 10 的设备上报告了一些记录文件为空的问题。需要注意的是,并非所有 Android 10 设备都有这些问题,只有少数,即诺基亚 6.1 和小米A2。

没有错误或异常,只是空的音频输出文件。

如果我使用 MediaRecorder.AudioSource.MIC) 那么问题就看不到了。

我找到了以下与 Android 10 和 VOICE_COMMUNICATION 相关的信息
The Android 10 release includes the following requirements for capture with VOICE_COMMUNICATION.

基于此,我使用以下代码检查了 AcousticEchoCanceler、AutomaticGainControl 和 NoiseSuppressor 的可用性。
AcousticEchoCanceler.isAvailable()
AutomaticGainControl.isAvailable()
NoiseSuppressor.isAvailable()

并在配备 Android 10 的 Mi A2 和 OnePlus 6 上发现了相同的结果。这两款设备均显示 AcousticEchoCanceler 和 NoiseSuppressor 可用,而 AutomaticGainControl 不可用。

由于并非所有 Android 设备都存在此问题,因此我不想再使用 。 MediaRecorder.AudioSource.MIC) .同时,没有错误、异常或差异性因素告诉我何时回退 MediaRecorder.AudioSource.MIC) .

更新:关闭 Mi A2 上的 Google Assistant 后,该问题得到解决。
这可能是指针: https://developer.android.com/guide/topics/media/sharing-audio-input

对此的任何帮助表示赞赏。

最佳答案

我最终使用了 MediaRecorder.AudioSource.VOICE_RECOGNITION 而不是 MediaRecorder.AudioSource.VOICE_COMMUNICATION 在所有安卓版本上。

我们最终在超过 15 种不同的设备上取样,发现 MediaRecorder.AudioSource.VOICE_RECOGNITION 最适合大多数设备,包括高端和中端手机。

据我了解,在某些设备上的少数设备上面临的原始问题似乎是 OEM 在 Android 10 和 VOICE_COMMUNICATION https://source.android.com/devices/audio/implement-pre-processing 方面的实现问题。

关于android - 使用 MediaRecorder.AudioSource.VOICE_COMMUNICATION 录制的音频在某些搭载 Android 10 的设备上为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60338135/

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