AVAudioPlayerNode中是否可以多次循环音频而不是无限次?下面的代码安排音频无限次,而不是说5次。
aVAudioPlayerNode.scheduleBuffer(buffer!, at: nil, options: AVAudioPlayerNodeBufferOptions.loops, completionHandler: nil)
我看起来与AVAudioPlayer类似 numberOfLoops 来定义播放音频的次数。我可以使用AVAudioPlayer,但没有功能可以播放音频。
答案 0 :(得分:2)
scheduleBuffer文档说“按照以前安排的任何命令调度缓冲区”。所以只需安排多次。
extension AVAudioPlayerNode {
func sceduleBuffer(_ buffer: AVAudioPCMBuffer, numberOfLoops: Int = 1) {
for _ in 0..<numberOfLoops { scheduleBuffer(buffer, at: nil) }
}
}