音声の抽出
オプション -vn で映像なしを指定。出力ファイル名でmp3を指定。
ffmpeg -i input.mp4 -vn output.mp3
音声の消去
逆に音声を消去するなら、オプション -an で音声なしを指定。
ffmpeg -i input.mp4 -an output.mp4
音声のフェードイン / フェードアウト
開始2秒でフェードイン。
ffmpeg -i input.mp4 -af "afade=t=in:st=0:d=2" -c:v copy output.mp4
開始xxx秒から2秒でフェードアウト
ffmpeg -i input.mp4 -af "afade=t=out:st=xxx:d=2" -c:v copy output.mp4
静止画の切り出し
input.mp4の10秒目から1枚画像を切り出す。
ffmpeg -ss 10 -i input.mp4 -vframes 1 -q:v 1 output.jpg
画像サイズも指定できる。オプション -f image2 は特に明示する必要はない。
ffmpeg -ss 10 -i input.mp4 -vframes 1 -q:v 1 -s 800x600 -f image2 output.jpg
- ss:切り出しの開始位置。
- t:切り出す範囲の時間。
- vframes:切り出したい静止画の枚数。
- r fps:1秒あたりの画像の枚数。
- q:v:出力画像の品質。1~5(数値が小さいほど高画質)
- s:静止画の横幅x高さ。
- f image2:画像として出力。
動画の回転
反時計回りに90度回転。
ffmpeg -i input.mp4 -vf transpose=2 -metadata:s:v:0 rotate=0 output.mp4
時計回りに90度回転。
ffmpeg -i input.mp4 -vf transpose=2 -metadata:s:v:0 rotate=0 output.mp4
倍速
1.5倍速にする。(音声なし動画の場合)
ffmpeg -i input.mp4 -vf setpts=PTS/1.5 output.mp4
1.5倍速にする。(音声のみの場合)
ffmpeg -i input.mp3 -af atempo=1.5 output.mp3
1.5倍速にする。(動画+音声の場合)
ffmpeg -i input.mp4 -vf setpts=PTS/1.5 -af atempo=1.5 output.mp4
または
ffmpeg -i input.mp4 -filter_complex "[0:v]setpts=PTS/1.5[v];[0:a]atempo=1.5[a]" -map "[v]" -map "[a]" output.mp4
色調補正
カラーバランス。各チャンネル(r, g, b)に対して、s(暗部), m(中間部), h(名部) の補正値を -1.0 〜 1.0 で指定する。
ffmpeg -i input.mp4 -vf "colorbalance=rs=0:rm=0:rh=0.125" output.mp4
明度を指定する。(-1.0 ~ 1.0)
ffmpeg -i input.mp4 -vf "eq=brightness=0.1" output.mp4
同様に、
- コントラスト : contrast (0.0 ~ 2.0)
- 鮮やかさ : saturation (0.0 ~ 3.0)
- ガンマ : gamma (0.1 ~ 10.0)
【参考】