gpt4 book ai didi

ios - CMTimeGetSeconds duration 和 addPeriodicTimeObserver 最后不相等

转载 作者:行者123 更新时间:2023-11-28 07:55:28 26 4
gpt4 key购买 nike

有谁知道为什么我的持续时间和 addPeriodicTimeObserver 的 CMTimeGetSeconds 值不相等?如果总秒数小于 0.5 小时,效果很好,但如果超过它,则效果不佳。谢谢!

audioPlayer?.addPeriodicTimeObserver(forInterval: interval, queue: DispatchQueue.main, using: { (progressTime) in
currentSeconds = CMTimeGetSeconds(progressTime)

if let duration = self.audioPlayer?.currentItem?.duration {
let durationSeconds = CMTimeGetSeconds(duration)

if currentSeconds == durationSeconds {
self.handleAudioFinishPlaying()
}
}
})

我将它们打印出来,这是结果:durationSeconds 为 5303.088,duration 为 5303.112。

最佳答案

由于时间来自不同的来源,毫秒的“增量”可能会略有差异,因此您应该四舍五入:

 if floor(currentSeconds) == floor(durationSeconds) {
self.handleAudioFinishPlaying()
}

关于ios - CMTimeGetSeconds duration 和 addPeriodicTimeObserver 最后不相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48222598/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com