periodicTimeObserver用于使用Swift的AVPlayer中的持续时间倒计时

时间:2017-01-21 08:34:51

标签: ios swift avplayer cmtime

我有AVPlayer的时间观察员,效果很好。我试图从音频0的持续时间开始倒计时。

它可以正常工作并且现在倒计时我只是在格式化方面遇到了一些麻烦。

如果您看到下面的图片,您会看到我的意思。它从整个分钟开始:秒3:00,到奇怪的数字3:-1等。

enter image description here enter image description here

任何想法我做错了什么?

下面是计时器的代码:

return

1 个答案:

答案 0 :(得分:2)

我使用此功能显示格式化日期

  func getFormatedTime(FromTime timeDuration:Int) -> String {

    let minutes = Int(timeDuration) / 60 % 60
    let seconds = Int(timeDuration) % 60
    let strDuration = String(format:"%02d:%02d", minutes, seconds)
    return strDuration
  }

像这样使用

        let strDuration = self.getFormatedTime(FromTime: recordingDuration)

或在addPeriodicTimeObserver方法

中直接使用
      recordingDuration = Float(CMTimeGetSeconds((self.playerItem?.asset.duration)!))-Float(CMTimeGetSeconds((self.playerItem?.currentTime())!))

将其传递给getFormatedTime设置返回值

的文本

只需两行代码