hh:mm:ssの形式で "00:01:30"の文字列を持っています。 私はこの時間をビデオプレーヤーのシーク時間としたい。並べ替えの意味は、hh:mm:ssの文字列値から 'seekToTime'を設定したいと思います。私はこれをNSDate formateで変換しますが、これを使って見ることができません。提案してください。 ありがとうございます。NSDateのAVPlayer seek player
-1
A
答えて
2
self.audioPlayer.timeFormat(self.audioPlayer.getCurrentAudioTime()))
func getCurrentAudioTime(){
let dur = CMTimeGetSeconds(audioPlayer.currentTime())
let cmValue = NSTimeInterval(dur)
let newTime = CMTimeMakeWithSeconds(value, 1)
self.audioPlayer.seekToTime(newTime)
}
func timeFormat(value:Double) -> NSString
{
let someFloat = Float(value)
let floatvalue = lroundf(someFloat)
let floorvalue = Double(floatvalue)
let minutes = floor(floorvalue/60)
let seconds = floorvalue - (minutes * 60)
let roundsec = Float(seconds)
let roundmin = Float(minutes)
let roundedSeconds = lroundf(roundsec)
let roundedMinutes = lroundf(roundmin)
var time : NSString!
time = NSString.init(format:"%d:%02d", roundedMinutes,roundedSeconds)
return time;
}
1
あなたはシーク時間を割り当て、その後CMTIME形式に文字列を変換し、コードは以下のとおりである、
let fileURL: NSURL = NSURL(string: timeString)!
let asset = AVURLAsset(URL: fileURL, options: nil)
let audioDuration = asset.duration
let newTime:CMTime = CMTimeGetSeconds(audioDuration)
playerVal.seekToTime(newTime)
は、その有用
0
を願っていた場合以下のコードを使用して文字列をCMTimeに変換することができます。
func seekTime(timeString:String) -> CMTime? {
let dateFormatter = NSDateFormatter.init()
dateFormatter.dateFormat = "HH:mm:ss"
if let startDate = dateFormatter.dateFromString("00:00:00") {
if let neededDate = dateFormatter.dateFromString(timeString) {
let interval = neededDate.timeIntervalSinceDate(startDate)
return CMTime.init(value: CMTimeValue(interval), timescale: 1)
}
}
return nil;
}
関連する問題
- 1. AVPlayer "on seek"イベントを聴くには?
- 2. avplayer seekでオーディオファイルの位置が正しく表示されない
- 3. illegalaccesserror Android用のSEEK
- 4. SQLインデックスSeek
- 5. AVPlayerダイナミックボリュームコントロール
- 6. AVPlayer In表示
- 7. iOSでAVPlayerやMovie Playerを使わずにビデオを再生する方法
- 8. JWPlayerでseek()、pause()を行う方法5.4
- 9. AVPlayer Can not Play
- 10. JW FLV Player Javascriptイベント
- 11. URLからのobjective-C AVPlayer
- 12. Bonfire Seek and Destroy- Freecodecampチャレンジ
- 13. スプリングカフカ:カフカリスナー - 消費者.seek号
- 14. AVplayerはAVPlayerの非常に単純な実装使って特定のリンク
- 15. 「NSDate」
- 16. NSDate
- 17. NSDate
- 18. AVPlayer
- 19. NSDateの結果 - (NSDate *)dateFromComponents:(NSDateComponents *)comps
- 20. AVPlayer&video from documents directory
- 21. jwplayerのアップデート(バージョン7.6)後にjwplayer seekが機能しない
- 22. タイムラインAVPlayerの進捗バー
- 23. Swift 2.2 AVPlayerのエラー処理
- 24. javascript/node.jsのseek()と同等ですか?
- 25. ビデオフレームを設定するAVPlayer
- 26. AVPlayerループを停止する
- 27. AVPlayer特定の時間でスキップする
- 28. Avplayerが2回作成されました
- 29. Xcode swift - バックグラウンドモード - ロックされたAVPlayerのオーディオ
- 30. NSDateフォーマッタのバグ
この変換を行うためのコードを書くのは何が難しいですか? – trojanfoe