FFmpeg コマンド例 (Windows)

FFmpeg コマンド例 (Windows)

Windows上でFFmpegをコマンドラインで使うときの例を集めました。

フォーマットを変換

rem WebMからMP4へ変換
ffmpeg -i in.webm out.mp4
rem MP4からMKVへ変換
ffmpeg -i in.mp4 out.mkv
rem WavからFLACへ変換
ffmpeg -i in.wav out.flac
  • 出力ファイルの拡張子に基づいて、フォーマットが自動的に設定されます。
  • フォーマットを明示的に指定する場合は-fを使用します。
  • コーデックは、そのフォーマットに格納可能であれば同じコーデックが、そうでなければ格納可能なデフォルトのコーデックが選択されます。
  • 同じコーデックであっても、再エンコードされます。

コーデックを指定して変換

rem 映像をH.265へ変換
ffmpeg in.mp4 -c:v libx265 out.mp4
rem 音声をOPUSへ変換
ffmpeg in.mp4 -c:a opus out.mkv
rem 映像をVP9、音声をOPUSへ変換
ffmpeg in.webm -c:v vp9 -c:a opus out.webm
  • -c:vで映像のコーデック、-c:aで音声のコーデック、-c:sで字幕のコーデックを指定できます。
  • 指定されていないほうのコーデックは、上と同じくそのフォーマットで格納可能かどうかで自動的に判断されます。

解像度を変更

rem フルHD(1920×1080)に変換
ffmpeg in.mp4 -s 1920x1080 out.mp4
rem アスペクト比が4:3のSD(720×480)に変換
ffmpeg in.mp4 -s 720x480 -aspect "4:3" out.mp4
rem アスペクト比が16:9の1440×1080に変換
ffmpeg in.mp4 -s 1440x1080 -aspect "16:9" out.mp4
  • 指定された解像度の縦横比が異なる場合、ディスプレイアスペクト比(DAR)が同じになるように、ピクセルアスペクト比(PAR)が自動的に設定されます。
  • ディスプレイアスペクト比を明示的に指定する場合は-aspectを使用します。

フレームレートを変更

rem 60FPSに変換
ffmpeg in.mp4 -r 60 out.mp4
rem 29.97FPSに変換(2通り)
ffmpeg in.mp4 -r 29.97 out.mp4
ffmpeg in.mp4 -r "30000/1001" out.mp4
  • 整数、小数、分数のいずれにも対応しています。

カット

rem 初めから1分間を切り出す(2通り)
ffmpeg -i in.mp4 -t 60 out.mp4
ffmpeg -i in.mp4 -t 1:0 out.mp4
rem 初めから2分間をカットし、その後から最後までを切り出す
ffmpeg -i in.mp4 -ss 2:0 out.mp4
rem 初めから3分間をカットし、その後から2分間を切り出す
ffmpeg -i in.mp4 -ss 3:0 -t 2:0 out.mp4
rem 開始10分後から開始20分後までを切り出す
ffmpeg -i in.mp4 -ss 10:0 -to 20:0 out.mp4
  • -ssで開始位置を指定できます。
  • -toで終了位置、または-tで長さを指定できます。

音量正規化

rem 音量を正規化する
ffmpeg -i in.mp3 -af loudnorm out.mp3

音声のみにする

rem 音声のみにする(再エンコードしない)
ffmpeg -i in.mp4 -c copy -vn out.m4a

二つの音声を格納する

rem inA.mp4の映像と音声、inB.mp4の音声を、一つのファイルに格納する(再エンコードしない)
ffmpeg -i inA.mp4 -i inB.mp4 -c copy -map 0:v -map 0:a -map 1:a out.mp4

コメント