2012-11-30 06:38:03 +0000 2012-11-30 06:38:03 +0000
115
115

FFmpegで動画を小さくするリサイズ方法

FFmpegで動画を小さくするためにサイズを変更することは可能ですか?

元の動画のサイズが1024x576なのですが、要件を満たすために動画を720x480にリサイズしたいと思います。

どうすればいいですか?

回答 (2)

182
182
182
2012-11-30 06:53:23 +0000

最も基本的な例は以下の通りです。

ffmpeg -i input.avi -s 720x480 -c:a copy output.mkv

(http://ffmpeg.org/ffmpeg-filters.html#scale) scale フィルター を使用することで、より柔軟性が増します:

ffmpeg -i input.avi -filter:v scale=720:-1 -c:a copy output.mkv

-1 は、アスペクト比を維持するために、指定した幅に対して自動的に正しい高さを選択するよう ffmpeg に指示します。-1 は、指定した高さを指定した場合、幅にも使用することができます。


libx264 を使用した場合のスケールの欠点は、このエンコーダは偶数値を必要とし、スケールが自動的に奇数値を選択してエラーになる可能性があることです。width or height not divisible by 2. 指定された高さ(この例では 720)に対して偶数値を選択するようにスケールに指示することができます:

scale="trunc(oh*a/2)*2:720"

…または指定された幅(この例では 1280)に対して:

scale="1280:trunc(ow/a/2)*2"

… また、-c をサポートしていない場合もあります。その場合は、新しいバージョンのFFMPEGを使用してください。

21
21
21
2018-02-24 06:57:24 +0000

私は以下のコマンドを使って動画や画像のリスケーリングを行っています。幅と高さが固定されている場合 -

ffmpeg -i input.avi -vf scale="720:480" output.avi

縦横比を維持したい場合は、高さに-1を与えるだけで、幅に基づいて自動的にリサイズされます -

ffmpeg -i input.avi -vf scale="720:-1" output.avi

入力サイズに基づいて拡大縮小したい場合は、次のようにします。

ffmpeg -i input.avi -vf scale="iw/1:ih/2" output.avi

NOTE :

iw : input width
ih : input height

スタティックビルドは以下からダウンロードできます - https://johnvansickle.com/ffmpeg/

ドキュメンテーション : https://ffmpeg.org/ffmpeg.html#filter_005foption