我正在尝试实时获取音频缓冲区样本(分辨率为ms)
我正在使用此功能,但它给了我错误。
AudioBufferList *bufferList = NULL;
AudioBuffer audioBuffer = bufferList->mBuffers[0];
int bufferSize = audioBuffer.mDataByteSize / sizeof(SInt32);
SInt32 *frame = audioBuffer.mData;
SInt32 signalInput[22050];
for( int i=0; i<bufferSize; i++ )
{
SInt32 currentSample = frame[i];
*(signalInput +i) = currentSample;
NSLog(@"Total power was: %ld ",currentSample);
}
我在这里做错了什么?
我只需要获取音频样本。我不想要2页代码(例如在app doc中)
谢谢。
答案 0 :(得分:0)
你想要的是与你想要做的事情不一致。 NULL缓冲区列表不能生成样本。
您需要两个+代码页才能正确配置音频会话和RemoteIO音频单元(等),以获得您想要获得的内容。否则没有样品。在开机之前,手机甚至不会打开录音或知道如何设置录音(有一串选项)。研究文档并处理它。