-1

我的应用使用 AudioUnit 播放 mp3 文件,完全使用 RemoteIO、NewTimePitch、AUConverter 和 MultiChannelMixer 4 AudioUnits。

我的应用程序可以在屏幕锁定时播放,但在屏幕关闭时无法播放!

更奇怪的是,这个问题只出现在Iphone4S(v6.1.3)中,但在Iphone5(v6.1.4)中可以正常工作!

这是我的音频单元设置代码:

// connect audio unit: converter -> timepitch -> output
OSExcute( AUGraphConnectNodeInput(processingGraph, converterNode, 0, timepitchNode, 0) );
OSExcute( AUGraphConnectNodeInput(processingGraph, timepitchNode, 0, mixerNode, 0) );
OSExcute( AUGraphConnectNodeInput(processingGraph, mixerNode, 0, eqNode, 0) );
OSExcute( AUGraphConnectNodeInput(processingGraph, eqNode, 0, outputNode, 0) );

// try to fix no sound issue, but does not work
UInt32 maximumFramesPerSlice = 4096;    
OSExcute( AudioUnitSetProperty(mixerUnit, kAudioUnitProperty_MaximumFramesPerSlice, kAudioUnitScope_Global, 0, &maximumFramesPerSlice, sizeof (maximumFramesPerSlice)));
4

1 回答 1

0

我已经解决了这个问题。解决方案是:对于除 RemoteIO 单元之外的每个音频单元,将 kAudioUnitProperty_MaximumFramesPerSlice 设置为 4096。

于 2013-08-27T03:01:39.850 回答