我的应用程序使用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)));
最佳答案
我已经解决了这个问题。解决方案是:
将除RemoteIO单元之外的每个音频单元的kAudioUnitProperty_MaximumFramesPerSlice设置为4096。
关于ios - 我的应用程序使用音频单元在IOS中播放mp3文件,但是当屏幕关闭时,声音停止了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18407209/