一个AVAudioPlayer播放多个声音而无需重新初始化?

时间:2015-03-02 09:40:45

标签: ios avfoundation core-audio avaudioplayer avplayer

我想使用AVAudioPlayer的单个实例来处理几种不同的快速音效,可以按任意顺序触发等等。

据我所知,更改要播放的音频文件的唯一方法是使用initWithContentsOfURL:重新初始化播放器。

所以,有两个问题:既然我现在在做什么,那好吗?重新分配等的开销更大。我应该关心吗?并且,有没有办法将所有四个文件放在那里,并告诉它只是一次加载一个,但不是顺序加载(即使用AVQueuePlayer)?

1 个答案:

答案 0 :(得分:1)

如果文件很短(听起来像),我建议将它们加载到AVAudioBuffer中,并安排这些缓冲区在AVAudioPlayer上正确播放。

在实践中查看AVAudioEngine上的WWDC talktranscript)。