我有一个数据类型的问题-与AVPlayer在Swift我得到一个CMTimeRange当我试图得到:
AudioPlayerManager.shared.currentTrack?.playerItem?.loadedTimeRanges[0]
上面印的是:
Optional(CMTimeRange: {{0/1 = 0.000}, {1016722/600 = 1694.537, rounded}})
我已经尝试了所有成员,并试图在这里获取cmtimerange键的值,但我只是得到了错误。我需要1694作为浮点数的最终值。
我该怎么做?
最佳答案
ACMTimeRange
只是一个时间范围。它具有start
、end
和duration
属性。每一个都是CMTime
。CMTime
具有seconds
属性作为Double
。
if let range = AudioPlayerManager.shared.currentTrack?.playerItem?.loadedTimeRanges[0] {
let seconds = Float(range.duration.seconds)
}
这将给您
Float
的秒数。如果您需要,请将duration
更改为end
。关于ios - 无法将Swift CMTimeRange转换为Float或获取数字?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44835320/