web-dev-qa-db-ja.com

FFmpegを使用して抽出されたwebP画像の品質とサイズを制御するにはどうすればよいですか?

私はWindows10 PCを使用しており、説明されているようにFFmpegを使用してビデオからフレームを抽出しています SuperUserのこの他の質問と回答のスレッドで 。生成されるwebPファイルのサイズを制御するにはどうすればよいですか?

次のコマンドを試しました:

ffmpeg -i anim.mp4 -vf "select=not(mod(n\,6))" -vsync vfr img1/f%04d.jpg -preset photo
ffmpeg -i anim.mp4 -vf "select=not(mod(n\,6))" -vsync vfr img/f%04d.webp -qscale 20 -lossless false -preset photo -compression_level 6
1
mayank1513

オプションの順序はFFmpegで重要です。

出力ファイル用のオプションは、その出力ファイルの前とすべての入力ファイルの後にあります。

したがって、このコマンド:

ffmpeg -i anim.mp4 -vf "select=not(mod(n\,6))" -vsync vfr img/f%04d.webp -qscale 20 -lossless false -preset photo -compression_level 6

する必要があります:

ffmpeg -i anim.mp4 -vf "select=not(mod(n\,6))" -vsync vfr -qscale 20 -lossless false -preset photo -compression_level 6 img/f%04d.webp

WebPエンコーダーの品質には専用のオプションqualityがあることを除いて、次のようになります。

ffmpeg -i anim.mp4 -vf "select=not(mod(n\,6))" -vsync vfr -quality 50 -lossless false -preset photo img/f%04d.webp

qualityの範囲は0〜100で、高いほど良いです。デフォルトは75です。

compression_levelは、制御とエンコードの速度も調整します。6が最も遅い/最高です。範囲は0〜6です。

1
Gyan