如何确定Android上的音频功能?

时间:2010-03-10 21:24:55

标签: android audio

我正在尝试使用Android的录音和播放功能。有没有办法在我的设备上枚举可用的音频参数?

现在,当我传递硬件(或模拟器)不喜欢的参数组合时,我只是得到一个错误。所以我不得不“猜测”:

int bufferSize; 
int sampleRate;

// does the audio hardware do 44 kHz? 
sampleRate = 44100;
bufferSize = AudioRecord.getMinBufferSize(sampleRate, 
    AudioFormat.CHANNEL_CONFIGURATION_MONO,
    AudioFormat.ENCODING_PCM_16BIT);

if (bufferSize != AudioTrack.ERROR_BAD_VALUE) {
    // Nope, how about 22 kHz? 
    sampleRate = 22050;
}

bufferSize = AudioRecord.getMinBufferSize(sampleRate, 
    AudioFormat.CHANNEL_CONFIGURATION_MONO,
    AudioFormat.ENCODING_PCM_16BIT);

if (bufferSize != AudioTrack.ERROR_BAD_VALUE) { 
    ...

当然有更好的方法!


This chart表示支持的音频输入采样率是8 kHz?那是对的吗?

1 个答案:

答案 0 :(得分:5)