Android 错误消息是什么;AFCCreateReSampler:avAFCInfo->;在采样器[44100]中加入[0]过量采样[16000]…”;什么意思?

Android 错误消息是什么;AFCCreateReSampler:avAFCInfo->;在采样器[44100]中加入[0]过量采样[16000]…”;什么意思?,android,Android,在Android 2.1设备(三星Galerxy S)上,我尝试使用以下代码录制音频数据 int频率=16000 int channelConfiguration=单声道中的AudioFormat.CHANNEL\u int audioEncoding=AudioFormat.ENCODING_PCM_16位; int bufferSize=AudioRecord.getMinBufferSize(频率、通道配置、音频编码); AudioRecord AudioRecord=新的录音(Medi

在Android 2.1设备(三星Galerxy S)上,我尝试使用以下代码录制音频数据


int频率=16000

int channelConfiguration=单声道中的AudioFormat.CHANNEL\u
int audioEncoding=AudioFormat.ENCODING_PCM_16位; int bufferSize=AudioRecord.getMinBufferSize(频率、通道配置、音频编码); AudioRecord AudioRecord=新的录音(MediaRecorder.AudioSource.MIC, 频率、信道配置、音频编码、缓冲区大小); short[]buffer=新的short[bufferSize]

Isadidel=假; 录音。开始录制()

while(isRecording){ int bufferReadResult=audioRecord.read(buffer,0,bufferSize); //保存缓冲区数据

} 此代码在其他设备(如nexus one)上运行良好,但在三星Galerxy S上,我收到以下错误消息:


AFCCreateReSampler:avAFCInfo->bUsed[0]进样器[44100]过采样[16000]通道[2]出比特深度[16] 有什么问题?谁能帮我解决这个问题

提前谢谢~
易金

我也面临着这个问题。 以下是关于我的项目的公开问题供参考:

不幸的是,我没有可以测试的设备

您是否需要使用另一种音频格式和另一种采样率? 我猜使用44100作为频率将消除错误,因为根据其名称,它与重新创建采样器有关


此外,如果你能告诉我你观察到的音频数据,我会非常感兴趣?声音是否起伏/不完整?没有什么?工作正常,但录制时cpu过载?

我尝试使用不同的采样率,8000和44100 Hz进行录制。但是失败了

在8000 Hz上,成功创建了一个录音对象,但从中读取的数据不稳定且不完整!这与16000 Hz记录的结果相同

在44100 Hz设置上,创建AudioRecord对象失败,并引发执行选项

记录的数据(位交换后保存)如下所示: (二进制) (地址0h)80 07 80 07。。。(相同模式).
... (同样的模式)。。。 (地址210h)07 80 07 80 08 80 FD 82 FF 87 5C 8D。。。 ... (不同的噪音模式)

我认为CPU负载非常低,几乎处于空闲状态

现在我正在尝试测试录音的其他设置~ 并寻求社区的帮助

谢谢你的帮助和关心


易金

如果您仍然对它感兴趣,我发现要在Galaxy S(以及所有驱动程序顶部带有alsa的设备)上实现音频录制功能,需要做几件事

  • 不要相信getMinBufferSize! 下面是一些似乎适用于所有设备的代码:
  • if(inputBuffSizeRec
    
    if(inputBuffSizeRec <= 4096){
       inputBuffSizeRec = 4096 * 3/2;
    }