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