AudioQueue和iOS4?

时间:2010-06-27 08:47:20

标签: iphone audio ios4 audioqueue

以下代码过去常用于我。我正在尝试使用iOS4而没有运气。它在模拟器中工作,但我在设备本身没有听到任何声音。我首先尝试将少量样本记录到NSMutableData变量中,然后我尝试将它们播放回来。

我尝试过来自Apple的SpeakHere示例 - 它可以正常工作(但是它从文件中播放 - 而不是内存)。

知道我错过了什么吗?

AudioSessionInitialize(NULL, NULL, NULL, NULL);
UInt32 sessionCategory = kAudioSessionCategory_PlayAndRecord; 
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
AudioSessionSetActive(true);

AudioQueueNewOutput(&m_format,&OutputCallback,self,CFRunLoopGetCurrent(), kCFRunLoopCommonModes,0,&m_device);   
AudioQueueBufferRef nBuffer=NULL;
AudioQueueAllocateBuffer(m_device,[data length],&nBuffer);
nBuffer->mAudioDataByteSize=[data length];
[data getBytes:(nBuffer->mAudioData) length:(nBuffer->mAudioDataByteSize)];
AudioQueueEnqueueBuffer(m_device,nBuffer,0,NULL);
AudioQueueStart(m_device,NULL);

1 个答案:

答案 0 :(得分:0)