期待:
当调用audioplayer.play(atTime:1)时,计时器重置为0,并在第1秒播放音频播放器
现实:
我尝试了延迟= 0.000000001,1,1000000,但无论如何,都不会播放噪音。然而,代码清楚地执行了(因为"函数被调用"出现在控制台中)
为何出现差异?
C = AVAudioPlayer() // assume other setups are done
C.play(atTime: 1)
print("function was called")
答案 0 :(得分:1)
根据官方API参考(由我翻译为swift 3):
func play(atTime time: TimeInterval) -> Bool
绝对音频输出设备开始播放的时间。您为time参数提供的值必须大于设备的当前时间。您可以使用以下代码延迟播放开始:
let playbackDelay = 3.0 // must be ≥ 0
myAudioPlayer.play(atTime: myAudioPlayer.deviceCurrentTime + playbackDelay)