最近のバージョンの ffmpeg の場合 (両方のビデオが同じ解像度であると仮定):
ffmpeg -i input1.mp4 -i input2.mp4 \
-filter_complex \
"[0:v]pad=iw*2:ih[int]; \
[int][1:v]overlay=W/2:0[vid]" \
-map "[vid]" \
-c:v libx264 -crf 23 \
output.mp4
これは、元のビデオと同じサイズの黒で右側をパディングすることにより、input1.mp4 のサイズを本質的に 2 倍にし、その後、オーバーレイ フィルターを使用してその黒の領域の上に input2.mp4 を配置します。
動画に出力に追加する必要があるオーディオ トラックがある場合は、オプション -map 0:a
を追加します。 最初のファイルのオーディオ、または -map 1:a
2 番目のファイルのオーディオの場合。
ミックスしたい 2 つのオーディオ トラックがある場合は、amix
を使用します。 フィルタ:
ffmpeg -i input1.mp4 -i input2.mp4 \
-filter_complex \
"[0:v]pad=iw*2:ih[int]; \
[int][1:v]overlay=W/2:0[vid]; \
[0:a][1:a]amix=inputs=2:duration=longest[aud]" \
-map "[vid]" \
-map "[aud]" \
-c:v libx264 -crf 23 \
-c:a aac -b:a 192k \
output.mp4