【发布时间】:2016-02-25 14:29:43
【问题描述】:
我正在使用 AVPlayer 流式传输音频。它运作良好。但现在我需要制作一个滑块来前后移动音频,就像典型的音乐播放器一样。我使用了函数seekToTime,它非常适用于本地音频文件。但是当我从 web url 流式传输歌曲时,当我转发大范围的滑块时,该功能会停止音频。
我的猜测是歌曲正在被下载,如果我将滑块向前移动大范围,那么可能是系统在那段时间没有下载歌曲数据包,所以它会停止播放器。
假设我只是按了一个按钮来播放歌曲,但现在我在 0 到 100 秒时立即移动滑块。在这种情况下,系统不工作并停止播放器。由于当时没有数据包。
有没有人知道如何克服这个问题或有任何其他方法。我正在使用 SWIFT 进行开发。如果它可以快速工作,我也可以使用任何库。这是我的功能:
func forward () {
timeGap = slider.value
let preferredTimeScale : Int32 = 1
let targetTime : CMTime = CMTimeMake(timeGap, preferredTimeScale)
player.seekToTime(targetTime, toleranceBefore: kCMTimeZero, toleranceAfter: kCMTimeZero)
}
提前致谢。
【问题讨论】:
标签: ios swift avplayer audio-streaming seektotime