0

I am trying to get the duration of an AVPlayer asset in Hours, Minutes, Seconds. I am able to get the time but it seems to be in seconds and milliseconds.

This is how I get the time:

let duration : CMTime = (player.currentItem!.asset.duration)!
let seconds : Float64 = CMTimeGetSeconds(duration)

I am then applying that to a slider using

slider.maximumValue = Float(seconds)

The outcome of this obviously gives me the duration in seconds however I want to be able to use the duration to set the maximumValue of my slider for video clips which may be under a minute.

For Example: My code above returns 30.865 for a 30 second clip. I need it to return 0.30

elevate
  • 147
  • 7

1 Answers1

0

This ended up working for me:

let duration : CMTime = (player.currentItem!.asset.duration)!
let timeInMinutes = Float(duration.value)
elevate
  • 147
  • 7