对于 iphone 语音更改应用程序(目标 c),我试图从录制音频队列缓冲区中获取采样的整数值,在函数中处理它们并将修改后的值写回播放缓冲区。目前我使用这样的东西
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;
}
提取采样值并且似乎工作得很好(信号输入应该是写入整数样本的目标向量)。但是将它们写回缓冲区仍然是一个问题...我搜索了文档和许多论坛以找到解决方案,但还没有成功。
所以我非常感谢任何建议,在此先感谢,卢卡斯