相当于 iOS AVPlayer 的 exoplayer 中的 getBufferedPosition()
Equivalent of getBufferedPosition() in exoplayer for iOS AVPlayer
我目前正在开发一个计算 HLS 流指标的 avplayer 应用程序。我想获取当前项目的缓冲级别。
private var availableDuration: Double {
guard let timeRange = player.currentItem?.loadedTimeRanges.first?.timeRangeValue else {
return 0.0
}
let startSeconds = timeRange.start.seconds
let durationSeconds = timeRange.duration.seconds
return startSeconds + durationSeconds
}
我对苹果文档中使用的术语有点困惑。
这里我得到了当前项目的 availableDuration 但我不确定这是否代表当前项目的缓冲级别。
您的代码似乎没问题。我用的一样
var bufferInSeconds: Double {
guard let range = self.loadedTimeRanges.first?.timeRangeValue else {
return 0.0
}
let sec = range.start.seconds + range.duration.seconds
return sec >= 0 ? sec : 0
}
我目前正在开发一个计算 HLS 流指标的 avplayer 应用程序。我想获取当前项目的缓冲级别。
private var availableDuration: Double {
guard let timeRange = player.currentItem?.loadedTimeRanges.first?.timeRangeValue else {
return 0.0
}
let startSeconds = timeRange.start.seconds
let durationSeconds = timeRange.duration.seconds
return startSeconds + durationSeconds
}
我对苹果文档中使用的术语有点困惑。
这里我得到了当前项目的 availableDuration 但我不确定这是否代表当前项目的缓冲级别。
您的代码似乎没问题。我用的一样
var bufferInSeconds: Double {
guard let range = self.loadedTimeRanges.first?.timeRangeValue else {
return 0.0
}
let sec = range.start.seconds + range.duration.seconds
return sec >= 0 ? sec : 0
}