iPhone - 同时启动 AVAudioPlayer 的多个实例

los*_*sit 5 iphone avaudioplayer

我正在使用 AVAudioPlayer 的多个实例同时播放多个音频文件。我运行一个循环来开始播放音频文件(预先调用 prepareToPlay 并且循环仅调用 play 方法)

但不可避免的是,其中一名球员的比赛并不同步。如何确保所有 4 个播放器同时开始播放音频?

谢谢。

Art*_*pie 2

不幸的是,你不能。AVAudioPlayer 不提供任何细粒度控制启动时间的机制。该currentTime属性设置文件中要读取的点,它不能保证 AVAudioPlayer 实例何时在系统时间开始播放,这是同步多个音频流所需的。

当我需要这种行为时,我使用 RemoteIO 音频单元 + 3D 混音器音频单元 + ExtAudioFile。

编辑

请注意,从 iOS 4 开始,您可以AVAudioPlayer使用以下命令同步多个实例playAtTime: