同时播放多首歌曲

时间:2016-12-20 05:12:25

标签: ios avaudioplayer

我有 os.listdir(dir_path) 个文件(有不同的音乐家的声音),我想同时播放多个文件。为此,我使用了five.caf类。我创建了五个AVAudioPlayer实例并设置了网址并播放了歌曲。但它没有正确同步。看起来一两个音乐家的声音会延迟到一秒钟。 如何同时同步所有歌曲并播放。

以下是我的代码:

AVAudioPlayer

1 个答案:

答案 0 :(得分:0)

建立并发调度队列并在调度队列的并发分支中播放文件

dispatch_queue_t parallelQueue = dispatch_queue_create("com.unique.name.queue", DISPATCH_QUEUE_CONCURRENT);

dispatch_async(parallelQueue, ^{
    [player play];
});
dispatch_async(parallelQueue, ^{
    [player1 play];
});
dispatch_async(parallelQueue, ^{
     [player2 play];
});
dispatch_async(parallelQueue, ^{
     [player3 play];
});
dispatch_async(parallelQueue, ^{
     [player4 play];
});

希望这有帮助。