web-dev-qa-db-ja.com

ffmpeg:トリミングされたサムネイルを作成する方法は?

ffmpegでビデオサムネイルを作成するには、次のコマンドを使用します。

ffmpeg -itsoffset -4 -i video.mp4 -vframes 1 thumb.jpg

これにより、同じサイズのビデオ(960x540などのサイズが不明)のサムネイルが表示されます。しかし、必要なのは、指定されたサイズ(200x200など)の正方形(トリミング)のサムネイルです。結果のサイズを変更するのではなく、中央からトリミングする必要があります。また、アスペクト比は変更しないでください。

これはどのように達成できますか?

9
Georg Ledermann

crop ビデオフィルターを使用できます:

ffmpeg -ss 4 -i video.mp4 -vf crop=200:200 -vframes 1 output.jpg
  • デフォルトでは、切り抜きは中央に配置されます。

  • オフセット時間を選択するには、-ssの代わりに-itsoffsetを使用します。

  • -qscale:vでJPEG出力品質を制御できます。通常、2〜5の値を使用するのが適切です。値が小さいほど品質が高くなります。

  • cropフィルターは、入力と出力の幅と高さを値として受け入れることもできます:iwihowoh。これにより、より柔軟でクリエイティブなフィルタリングが可能になります:crop=iw-100:ih-50

ffplayでテストして、プレビューを取得できます。

ffplay video.mp4 -vf crop=200:200

元の画像( testsrc ソースフィルターで生成:

ffmpeg -f lavfi -i testsrc -vframes 1 output.jpg 

original image

トリミングされた画像:
cropped image

12
llogan

最初にスケーリングしてからトリミングして、出力を向上させることができます;)

ffmpeg -ss 10 -i "ALi_Video.mp4" -vframes 1 -filter "scale=-1:300,crop=400:300" "output.jpg"

input video at 0:49output image

ffmpeg -ss 10 -i "ALi_Video.mp4" -vframes 1 -filter "scale=-1:150,crop=200:150" "output.jpg"

another thumbnail

5
S.M.Mousavi