FFmpegでよく使うコマンド集2
星杜なぎさです☆
本記事ではFFmpegで個人的によく使うコマンドを紹介します!
前回の記事では、動画1つの加工でしたが、今回は、複数動画の結合に絞って、具体例を記載していきます
↓前回の記事↓
使用する動画の説明
入力とする動画は以下の4つです
(すべて 1920x1080 の動画です)
A.mp4 ・・・ ピンクのアキクサインコ
B.mp4 ・・・ 水色のセキセイブルー
C.mp4 ・・・ シマエナガ
D.mp4 ・・・ 名古屋名物 ぴよりん
1. 縦方向で結合(Vertical Stack)
1.1 2つの動画を結合
ffmpeg -i A.mp4 -i B.mp4 -filter_complex "vstack" vAB.mp4
出力動画
1.2 3つ以上の動画を結合
ffmpeg -i A.mp4 -i B.mp4 -i C.mp4 -filter_complex "[0:v][1:v][2:v]vstack=inputs=3[v]" -map "[v]" vABC.mp4
出力結果
2. 横方向に結合(Horizontal Stack)
2.1 2つの動画を結合
ffmpeg -i A.mp4 -i B.mp4 -filter_complex "hstack" hAB.mp4
出力結果
2.2 3つ以上の動画を結合
ffmpeg -i A.mp4 -i B.mp4 -i C.mp4 -filter_complex "[0:v][1:v][2:v]hstack=inputs=3[v]" -map "[v]" hABC.mp4
出力結果
3. 2x2のタイル状に並べる(X Stack)
ffmpeg -i A.mp4 -i B.mp4 -i C.mp4 -i D.mp4 -filter_complex "[0:v][1:v][2:v][3:v]xstack=inputs=4:layout=0_0|w0_0|0_h0|w0_h0[v]" -map "[v]" xABCD.mp4
出力結果
4. 時間方向で結合
これだけ準備が必要なのですが、
以下の「filelist.txt」に、結合するファイル名を記載しておきます
あとは、以下のコマンドで時間方向の結合ができます
ffmpeg -safe 0 -f concat -i filelist.txt -c copy tABCD.mp4
出力結果
ちなみに、以下のコマンドで、mp4ファイルのfilelist.txtを作成できる
(for %f in (./*.mp4); do @echo file %f) > filelist.txt
参考URL
Concatenate – FFmpeg
https://trac.ffmpeg.org/wiki/Concatenate
この記事が気に入ったらサポートをしてみませんか?