2012-03-27 35 views
2

我设法得到recordCallBck并处理缓冲区数据。 现在我想播放这些数据。 我有播放回调,但我只是无法找到任何地方如何播放这种缓冲区。remoteIO如何发挥它?

回调:

static OSStatus playbackCallback(void *inRefCon, 
          AudioUnitRenderActionFlags *ioActionFlags, 
          const AudioTimeStamp *inTimeStamp, 
          UInt32 inBusNumber, 
          UInt32 inNumberFrames, 
          AudioBufferList *ioData) { 

    for (int i = 0 ; i < ioData->mNumberBuffers; i++){  
     AudioBuffer buffer = ioData->mBuffers[i]; 
     unsigned char *frameBuffer = buffer.mData; 

现在该怎么办? 我会怎么玩?

回答

0

看看这个例子,试图处理数据时帮了我很多。这是一个工作应用程序的示例,可以播放您对麦克风说过的任何内容。它使用2个回调函数,一个用于记录数据并放入全局音频缓冲区,另一个用于将数据恢复回放回调。

http://www.stefanpopp.de/2011/capture-iphone-microphone/