0

私はビデオのフレームを抽出することになっているアプリに取り組んでいます。そのため、多くの研究開発を行った後、次の方法を見つけました。

1) ffmpeg フレームワークhttps://github.com/lajos/iFrameExtractorを使用する iFrameExtractor を使用し ます。

2) MPMoviePlayerController の組み込みプロパティを使用する

MPMoviePlayerController *movie = [[MPMoviePlayerController alloc] initWithContentURL:  [NSURL   URLWithString:@"Video.mp4"]];
NSNumber t1 = 10;
NSNumber t2 = 11;
NSArray *TimeStamp = [NSArray arrayWithObjects:t1,t2,nil];
[movie requestThumbnailImagesAtTimes:TimeStamp timeOption:MPMovieTimeOptionExact];

3)AVAssetImageGeneratorの使用

ということで、どの方法を選べばよいか迷ってしまいます。どなたか他の方法のデメリットを挙げて正しい方法を教えてください。

ビデオのすべてのフレームを抽出しました (最大 2 分間)。

前もって感謝します。:)

4

1 に答える 1

1

iOS アプリケーションにコンパイルされた ffmpeg を使用しようとすると、対処する法的問題がいくつか発生します。詳細については、iphone-app-store と lgpl の間の互換性を参照してください。以前は AVAssetImageGenerator について聞いたことがありませんでしたが、その copyCGImageAtTime メソッドは、小さなサムネイルに必要なものとまったく同じように思えます。UIImage を作成し、返された CGImageRef を渡して、結果を PNG として保存するのは簡単なはずです。いずれにせよ、requestThumbnailImagesAtTimes API はおそらく AVAssetImageGenerator を呼び出すだけです。

于 2013-07-06T06:12:28.230 に答える