(ローカル)ビデオの再生時間を取得し、個々のフレームにUIImage
秒でアクセスする必要があります。これまで私はMPMoviePlayerController
を使っていました。iOS:ビデオを再生せずにビデオの再生時間とサムネイルを取得する
最初にMPMovieDurationAvailableNotification
イベントに登録してから、prepareToPlay
を呼び出します。イベントが受信されると、ビデオの再生時間を記録してから、requestThumbnailImagesAtTimes
でフレームを要求します。
これはうまくいきますが、私はそれをビューに何も追加していないにもかかわらず、ビデオが再生を開始しているようです(バックグラウンドで再生されているオーディオを聞くことができます)。
実際に動画を再生せずに動画の再生時間とフレームを取得する方法はありますか?
moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL: movieURL];
[moviePlayerController setShouldAutoplay:NO];
[moviePlayerController prepareToPlay];
編集:setShouldAutoPlay:NO
を呼び出す
よう迅速に取得することができますファイルシステムは、[AVAsset](https://developer.apple.com/library/mac/#documentation/AVFo)としてアクセスできます。 undation/Reference/AVAsset_Class/Reference/Reference.html)assetWithUrl:返されたAVAssetにはdurationプロパティがあります。しかしサムネイルについてはわからない。 – geraldWilliam
この問題に関する提案:https://stackoverflow.com/questions/47617130/error-getting-same-video-thumbnail-image-every-time-in-swift3-ios/47617794#47617794 –