我正在尝试播放一个非常小的音频文件 - 它的长度大约为0.05秒,而且它是一个未压缩的.wav文件。
现在,我正在使用AVAudioPlayer
播放声音。
我打算在旋转器旁边高速播放声音,价格合适或财富之轮。如果我以循环计数100实例化AVAudioPlayer
,它确实会像我期望的那样快速播放声音。
但是,如果我在微调器的每个'tick'上执行[audioPlayer play]
,那么音频就会非常落后。我的猜测是,与设置高循环次数不同,[audioPlayer play]
需要为每次播放完整设置和拆除音频剪辑的内存。
有没有办法强制剪辑在内存中保持更长时间的设置?这是一个非常频繁的声音,因此在整个应用程序运行期间保持它也是可以的。
答案 0 :(得分:0)
如果您依赖于更精确的计时,您可能想尝试使用其他声音API之一。音频单元RemoteIO很复杂,但允许最精确的播放未压缩声音的时间。 OpenAL和音频队列是另外两个选择。