gpt4 book ai didi

android - 是否通过采样率记录音频循环?

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

我正在尝试阅读和理解Android中的音频。在搜索中,我遇到了this article。他在这里编写了一个代码,以WAV格式录制音频。但是有一件事我还不完全了解,那就是他的code的第一个循环:

public class ExtAudioRecorder 
{
private final static int[] sampleRates = {44100, 22050, 11025, 8000};

public static ExtAudioRecorder getInstanse(Boolean recordingCompressed)
{
ExtAudioRecorder result = null;

if(recordingCompressed)
{
result = new ExtAudioRecorder( false,
AudioSource.MIC,
sampleRates[3],
AudioFormat.CHANNEL_CONFIGURATION_MONO,
AudioFormat.ENCODING_PCM_16BIT);
}
else
{
int i=0;
do
{
result = new ExtAudioRecorder( true,
AudioSource.MIC,
sampleRates[i],
AudioFormat.CHANNEL_CONFIGURATION_MONO,
AudioFormat.ENCODING_PCM_16BIT);

} while((++i<sampleRates.length) & !(result.getState() == ExtAudioRecorder.State.INITIALIZING));
}
return result;

他提供了类似的基本信息,但我没有完全了解。这与不同类型的Android设备的性能有关吗?无论如何,希望有人可以帮我照亮:)

最佳答案

他正在尝试使用{44100,22050,11025,8000}中的不同采样率来初始化录音机。

取决于基础硬件,设备可能不支持所有采样率。

尽管文档说:

“44100Hz是目前唯一可以在所有设备上使用的速率,但是其他速率(例如22050、16000和11025)可能在某些设备上可以使用。”

我认为作者已经编写了代码,以确保如果以采样率初始化失败,则尝试以其他采样率进行初始化,除非初始化成功,这由他在循环条件下进行的检查给出。

关于android - 是否通过采样率记录音频循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15741419/

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