我在制作动画时使用AVAudioPlayer类播放简短的aiff声音。不幸的是,每次播放声音时,动画的帧率都会下降。似乎可以通过将AVAudioSession类别设置为AVAudioSessionCategorySoloAmbient
来解决此问题,但是尽管这样做,我仍然看到很多帧速率下降。
我在应用程序委托中设置AVAUdioSession类别,如下所示:
NSError *setCategoryError = nil;
BOOL success = [[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategorySoloAmbient error: &setCategoryError];
我在这里做错什么了吗?
最佳答案
我假设您的AVAudioPlayer实例在主线程上。将AVAudioPlayer实例移至其自己的线程。结果将改善图形渲染性能。
就动画问题而言,您的应用程序音频会话单例应该没有效果,或者最多没有效果。 (正如您通过确保将其设置为不可混合的类别所指出的那样)
关于ios - AVAudioPlayer降低帧率,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20844186/