Ich versuche FFMPEG zu verwenden, um ein Video mit einem überlagerten Video zu erstellen.FFMPEG: Überlagern Sie ein Video auf einem anderen, und machen Sie schwarze Pixel transparent
Ich habe 2 MP4s. Ich muss alle BLACK Pixel in der Overlay Video transparent machen, damit ich das Hauptvideo darunter sehen kann.
fand ich zwei Möglichkeiten, ein Video auf einem anderen zu überlagern:
Zunächst werden die folgenden Positionen der Überlagerung in der Mitte, und daher darunter den Teil des Haupt-Video versteckt:
ffmpeg -i 1.mp4 -vf "movie=2.mp4 [a]; [in][a] overlay=352:0 [b]" combined.mp4 -y
und diese, legt sich den Overlay-Video auf der linken Seite, aber es ist Opazität auf 50% eingestellt, so zumindest andere darunter sichtbar ist:
ffmpeg -i 1.mp4 -i 2.mp4 -filter_complex "[0:v]setpts=PTS-STARTPTS[top]; [1:v]setpts=PTS-STARTPTS, format=yuva420p,colorchannelmixer=aa=0.5[bottom]; [top][bottom]overlay=shortest=0" -acodec libvo_aacenc -vcodec libx264 out.mp4 -y
Mein Ziel ist einfach zu mak Alle schwarzen Pixel im Overlay (2.mp4) sind vollständig transparent. Wie kann das gemacht werden?
Vielen Dank! Genau das habe ich gesucht. Zugegebenermaßen folge ich der Erklärung nicht ganz und hätte mir das nie einfach nur aus der FFMPEG-Dokumentation, die ich äußerst kryptisch finde, einfallen lassen. Ich denke, die Ergebnisse sind in der Tat zufriedenstellend, aber wenn mein Klient nicht einverstanden ist, werde ich mit MoDJ's Vorschlag gehen. (Danke euch beiden!) –