FFmpeg - Nur Wasserzeichen einblenden

FFmpeg - Nur Wasserzeichen einblenden

Ich versuche, ein Wasserzeichen.png-Bild mit Einblendeffekt auf ein Video zu legen. Dies ist mein Befehl:

ffmpeg -i input_vid.mp4 -c:v libx264 -pix_fmt yuv420p -vf movie=watermark_3.png, scale=144:31 [Wasserzeichen]; [in][Wasserzeichen] overlay=5:Hh-15, fade=in:0:30:alpha=1[out] -s 180x320 -preset ultrafast -c:a kopiere out.mp4

Dadurch wird das gesamte Video jedoch von Schwarz eingeblendet. Irgendwelche Ideen?

Antwort1

Verwenden

ffmpeg -i input_vid.mp4 \
      -vf "movie=watermark_3.png:loop=0.1,setpts=N/FRAME_RATE/TB,scale=144:31,format=rgba,fade=in:0:30:alpha=1[watermark]; \
           [in][watermark]overlay=5:H-h-15:shortest=1,scale=180x320[out]" \
      -c:v libx264 -pix_fmt yuv420p -preset ultrafast -c:a copy out.mp4

Die Überblendung muss in der Wasserzeichenkette angewendet werden, um nur diese zu beeinflussen. Das Loop-Flag wird auf eine Zahl unter eins gesetzt, damit das einzelne Bild unendlich wiederholt wird. setpts stellt monoton zunehmende Zeitstempel sicher.

verwandte Informationen