我创建了自定义回调,用于使用 ExtAudioFile 为定时音乐应用程序实时混合声音。
OSStatus MyAURenderCallack (
void *inRefCon,
AudioUnitRenderActionFlags *ioActionFlags,
const AudioTimeStamp *inTimeStamp,
UInt32 inBusNumber,
UInt32 inNumberFrames,
AudioBufferList *ioData
);
我需要更改调用每个回调的时间。
我正在检查每个新回调调用了多少个刻度......
soundStructPointerArray[inBusNumber].callTime=mach_absolute_time()-soundStructPointerArray[inBusNumber].last;
soundStructPointerArray[inBusNumber].last=mach_absolute_time();
在模拟器中,我得到了一个 ...11595773
我需要改变这个时间,以便更快。有人知道我该怎么做吗?
可以使用
音频会话属性kAudioSessionProperty_PreferredHardwareIOBufferDuration请求更频繁的音频单元缓冲区回调。