FFMPEG: Ein Video auf ein anderes überlagern und schwarze Pixel transparent machen

Ich versuche, @ zu verwend FFMPEG, um ein Video mit einem Video übereinander zu erstellen.

Ich habe 2 MP4s. Ich muss alles @ machBLACK pixels in dem overlay Videotransparen damit ich das Hauptvideo darunter sehen kann.

Ich habe zwei Möglichkeiten gefunden, ein Video auf ein anderes zu überlagern:

Zunächst wird das Overlay wie folgt in der Mitte positioniert und daher der Teil des Hauptvideos darunter ausgeblendet:

    ffmpeg -i 1.mp4 -vf "movie=2.mp4 [a]; [in][a] overlay=352:0 [b]" combined.mp4 -y

Und in diesem Fall wird das Overlay-Video auf der linken Seite platziert. Die Deckkraft ist jedoch auf 50% festgelegt, sodass mindestens ein anderes Video 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 es einfach, alle schwarzen Pixel in der Überlagerung (2.mp4) vollständig transparent zu machen. Wie geht das?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage