Ich möchte eine Überblendung auf die letzten x Bilder eines Videos mit den ersten x Bildern anwenden, um eine nahtlose Schleife zu erhalten.ffmpeg - eine nahtlose Schleife mit einer Überblendung machen
Wie kann ich das tun?
Ich möchte eine Überblendung auf die letzten x Bilder eines Videos mit den ersten x Bildern anwenden, um eine nahtlose Schleife zu erhalten.ffmpeg - eine nahtlose Schleife mit einer Überblendung machen
Wie kann ich das tun?
Angenommen, Ihr Video ist 30 Sekunden lang und Ihr Fade ist 1 Sekunde lang. Ihr Befehl wäre
ffmpeg -i video.mp4 -filter_complex
"[0]split[body][pre];
[pre]trim=duration=1,format=yuva420p,fade=d=1:alpha=1,setpts=PTS+(28/TB)[jt];
[body]trim=1,setpts=PTS-STARTPTS[main];
[main][jt]overlay" output.mp4
Das Video ist in zwei identische Streams aufgeteilt. Der erste wird auf die erste Sekunde getrimmt, ein Alpha-Kanal hinzugefügt und dann ausgeblendet. Der letzte Filter im ersten Stream verzögert ihn um 28 Sekunden, da die endgültige Ausgabe die erste Sekunde des ursprünglichen Clips abgeschnitten und sich mit der letzten Sekunde überschnitten hat. Der zweite Strom wird getrimmt, um bei t=1
zu beginnen, und der verarbeitete erste Strom wird auf dem zweiten überlagert. Da der Alphakanal im ersten Stream eingeblendet wird, wird er überblendet.