it-swarm.com.de

Verbinden Sie Videos nebeneinander

Wie kann ich diese vier Videos nebeneinander zusammenfügen (mit 10 Pixel Abstand zwischen der linken und der rechten Seite. Kein Abstand zwischen der oberen und der unteren Seite)?

  • top_left.mp4

  • top_right.mp4

  • bottom_left.mp4

  • bottom_right.mp4

Kdenlive ist so fehlerhaft und hat mich verrückt gemacht. Jede Befehlszeilenmethode ist willkommen.

1
ar2015

Nur Video

10px Grenze zwischen links und rechts

enter image description here

Es gibt verschiedene Methoden, um dies zu tun, aber die Verwendung von hstack , vstack und pad ist wahrscheinlich die einfachste:

ffmpeg -i top_left.mp4 -i bottom_left.mp4 -i top_right.mp4 -i bottom_right.mp4 -filter_complex \
"[0:v][1:v]vstack,pad=iw+10:ih[l]; \
 [2:v][3:v]vstack[r]; \
 [l][r]hstack" \
output.mp4
  • Eingaben müssen die gleiche Breite, Höhe und das gleiche "Pixelformat" haben. Wenn dies nicht der Fall ist, verwenden Sie die Filter scale und/oder format , um die Streams für die * Stack-Filter vorzubereiten.

  • Verwenden Sie *stack=shortest=1, wenn die Filterausgabe beendet werden soll, wenn die kürzeste Eingabe beendet wird.

10px Grenze zwischen links und rechts, 3px Grenze zwischen oben und unten

enter image description here

ffmpeg -i top_left.mp4 -i bottom_left.mp4 -i top_right.mp4 -i bottom_right.mp4 -filter_complex \
"[0:v]pad=iw:ih+3[tl]; \
 [tl][1:v]vstack,pad=iw+10:ih[l]; \
 [2:v]pad=iw:ih+3[tr]; \
 [tr][3:v]vstack[r]; \
 [l][r]hstack" \
output.mp4

Mit kombiniertem Audio

Der Filter amerge kombiniert alle Eingangskanäle und mischt sie dann mit -ac 2 auf Stereo herunter:

ffmpeg -i top_left.mp4 -i bottom_left.mp4 -i top_right.mp4 -i bottom_right.mp4 -filter_complex \
"[0:v][1:v]vstack,pad=iw+10:ih[l]; \
 [2:v][3:v]vstack[r]; \
 [l][r]hstack[v]; \
 [0:a][1:a][2:a][3:a]amerge=inputs=4[a]"
-map "[v]" -map "[a]" -ac 2 output.mp4
  • Bei Verwendung von amerge ist das kombinierte Audio nur so lang wie die kürzeste Eingabe. Wenn das ein Problem ist, dann benutze amix .
3
llogan