1

ファイルがアップロードされたら、バックエンドのQuickTimeムービーから設定されたポスター画像を抽出する方法をネットで探していました。これを行うための効果的な方法はありますか?または、特定のフレームをビジュアルとして取得する方法はありますか?スクリプトが特定の属性値のペアと画像コンテンツのファイルを組み合わせることができると思いますか?この主題の助けをいただければ幸いです。

ありがとう!

4

1 に答える 1

2

ポスターフレームが常に.movビデオの一部である場合は、exifタグを抽出することから始めることができますPosterTime。このタグの値は、ポスターフレームがビデオのどこにあるかを示します。デフォルトでは、時間0(つまり、最初のフレーム)にあります。次に、このビデオ形式を理解するいくつかのプログラムでフレームを抽出できます。これffmpegはそのようなプログラムとして適しています。

exiftool例として、タグの値を抽出するために使用できますPosterTime。周りにあったビデオのポスターフレームを手動で変更しexiftool

exiftool -PosterTime -b somevideo.mov

私は得る:

0.013333333333333

これは、ポスターフレームが2番目の〜0.013(つまり、明確でない場合は2番目の0と2番目の1の間)にあることを意味します。これで、次を使用してその時点で単一のフレームを抽出できますffmpeg

ffmpeg -ss 00:00:00.013 -i somevideo.mov -frames 1 posterframe.jpg

ここで、http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/QuickTime.htmlに。というタグもあることに注意しくださいPreviewPICT。これは、ポスターフレームを表す何か他のものがある可能性があることを示しているようですが、このタグが実際にこの目的で使用されているかどうかはわかりません。

于 2013-02-02T00:13:25.153 に答える