ffmpeg使い方のまとめ

標準

最近フリーの動画変換ソフトが減ってきて不便だなーと感じたので、今日はそんなGUIに依存せずコマンドラインで動画を変換できるffmpegの使い方をまとめます。 ダウンロードはこちらのサイトから。開いたときに何かポップアップ出るかもしれませんが、ここが公式なので無視してください。

使い方

コマンドラインに変換を命じるコマンドを入力するのみです。単純に変換するだけなら起動して10秒以内で動画のエンコード始められます。

ダウンロードしたzipを解凍した後、中にあるbinフォルダーに実行ファイルが入ってます。そこに上記の画像のように作業フォルダーをbinフォルダーに変更したコマンドプロンプトのショートカットを作ってあげると超簡単にそれ以降使うことが出来ます。

変換に必要な(主な)オプション

ffmpegは賢いので、入出力ファイルの形式は拡張子で判断してくれます。

  • 指定例「-」はそれ単独で使えるって意味です。
  • 説明(カッコ内)はデフォルト値です。
  • 説明[角カッコ内]は覚え方です。
オプション名 説明 指定例
-i 入力ファイル指定 -i input.mp4
-y 上書き許可
-o 上書き禁止
-stats エンコード中に進捗報告する
-vol 音量変更(-vol 256) -vol 128
-t 切り取る間の時間[time] / 秒 -t 30 (30秒切り取り)
-fs 出力のサイズ制限[file size] -fs 1024 (1024バイトまで)
-ss 時間指定のオフセット[set start] -ss 20 (20秒のところからカウント)
-sseof 最後から数えてオフセット[-end of file] -sseof 30 (最後から30秒のところから)
-vframes 指定したフレーム数だけ出力 -vframe 100 (100フレームだけ)
-frames xxフレーム目の画像を出力 -frames 50 output.jpg
-r フレームレート[rate] -r 30 (30Hzで出力)
-s フレームサイズ[size] -s 1024×720 (幅x高さ)
-aspect アスペクト比 -aspect 4:3
-aspect 1.333
-vn ビデオ無効化[video none]
-vcodec ビデオコーデック指定 -vcodec libx264 (H.264を指定)
-vcodec copy (入力のまま引き継ぐ)
-pass パス -pass 1 (シングルパス)
-pass 2 (2パス/最大)
-b:a 音声のビットレート(bitrate:audio) -b:a 192k (192kbps)
-b:v ビデオのビットレート(-:video) -b:v 1000k (1000kbps)
-ar サンプリングレート[audio sampling rate] -ar 48000 (48,000Hz)
-ac チャンネル数[- channel] -ac 1 (モノラル)
-ac 2 (ステレオ)
-an 音声無効化[audio none]
-acodec 音声コーデック指定 -acodec libfdk_aac (AAC)
-acodec copy (入力のまま引き継ぐ)

利用例

# input.aviをH.264でモノラルにして480x360にサイズ変更してoutput.mp4として出力
> ffmpeg -i input.avi -vcodec libx264 -s 480x360 output.mp4
# input.aviをH.265で15fpsにしてオーディオコーデックはmp3にしてoutput.mp4として出力
> ffmpeg -i input.avi -vcodec hevc -r 15 -acodec libmp3lame output.mp4
# input.aviを音無しにしてoutput.mp4として出力
> ffmpeg -i input.avi -an output.mp4
# input.aviをモノラルにしてoutput.mp4として出力
> ffmpeg -i input.avi -ac 1 output.mp4

コマンドオプションはソフト側が分からなくならない程度ならどんな順番でも構いません。

普段使いするオプションのみのまとめです。本格的なオプションを使うと、トリミングが出来たり、文字を書き込めたりするらしいですけど、それは大人しくaviutlとか使ってください、というか私は使います。