2017-06-29 13 views
0

イム - スウィフトでAVPlayerと私が取得しようとしたとき、私はCMTimeRangeを与えています:これが印刷されている何Swift CMTimeRangeをFloatに変換するか、番号を取得しますか?データ型の問題を持つ

AudioPlayerManager.shared.currentTrack?.playerItem?.loadedTimeRanges[0] 

は次のとおりです。私はすべて試してみました

Optional(CMTimeRange: {{0/1 = 0.000}, {1016722/600 = 1694.537, rounded}}) 

ここでcmtimerangeキーの値を取得しようとしていますが、エラーが発生します。フロートとして最終価値1694が必要です。

どうすればよいですか?

+0

あなたが試したこととあなたが得ているエラーであなたの質問を編集するべきです。 – rmaddy

答えて

1

CMTimeRangeは、ある範囲の時間です。これは、start,endおよびdurationの特性を有する。それぞれはCMTimeです。 CMTimeは、としてsecondsプロパティを持ちます。

if let range = AudioPlayerManager.shared.currentTrack?.playerItem?.loadedTimeRanges[0] { 
    let seconds = Float(range.duration.seconds) 
} 

これにより、秒数がFloatになります。それが必要な場合はdurationendに変更してください。

+0

Objective cでどのように使用するのですか? –

関連する問題