FFmpeg ist ein leistungsstarker Open-Source-Audio- und Videokonverter. Mit FFmpeg können wir fast alle Arten von Mediendateien codieren, decodieren, transcodieren, muxen, demuxen, aufnehmen, in der Größe ändern, streamen, filtern und abspielen. Nicht nur das, wir können auch Live-Audio/Video-Streams abrufen. FFmpeg wird mit vielen Filtern geliefert, um verschiedene Aufgaben auszuführen. Einer der weniger bekannten, aber nützlichen Filter ist Zoompan . Mit dem Zoompan-Filter können wir Videos in Linux einfach vergrößern und verkleinern. Lassen Sie mich Ihnen anhand eines Beispielbefehls zeigen, wie das geht.
Stellen Sie sicher, dass Sie FFmpeg auf Ihrem Linux-Computer installiert haben. Wir haben die Schritte zur Installation von FFmpeg auf gängigen Linux-Betriebssystemen unter folgendem Link dokumentiert.
- So installieren Sie FFmpeg unter Linux
Wechseln Sie nach der Installation von FFmpeg zu dem Speicherort, an dem Sie das Video gespeichert haben, und führen Sie den folgenden Befehl aus, um es alle X Sekunden zu vergrößern und zu verkleinern:
$ ffmpeg -i input.mp4 -vf "zoompan=z='if(lte(mod(time,10),3),2,1)':d=1:x=iw/2-(iw/zoom/2):y=ih/2-(ih/zoom/2):fps=30" output.mp4
Der obige Befehl zoomt in Richtung der Mitte des Videos auf 2x Zoom für die ersten 3 Sekunden von alle 10 Sekunden Zeitblock. Ersetzen Sie input.mp4
mit deinem Dateinamen. Passen Sie auch die Werte nach Ihren Anforderungen an und stellen Sie die FPS für den Filter passend zur Eingabe ein. Der Standardwert ist 25.
Sie können die FPS-Details neben anderen Details eines bestimmten Videos mit dem folgenden Befehl finden:
$ ffmpeg -i input.mp4
Hier ist das eigentliche Eingabevideo vor der Konvertierung:
Und hier ist das konvertierte (vergrößerte) Video:
Hast du den Unterschied bemerkt? Das Video wird in den ersten 3 Sekunden auf 2X vergrößert und dann wieder normal (verkleinert). Genau bei 10 Sekunden wird das Video erneut für die ersten 3 Sekunden vergrößert und der Zyklus wird fortgesetzt, bis das Video endet.
Sie können auch die folgenden Zoompan-Einstellungen ausprobieren, die im Hilfebereich des FFmpeg-Zoompan-Filters angegeben sind.
Vergrößern Sie bis zu 1,5-fach und schwenken Sie gleichzeitig auf eine Stelle in der Nähe der Bildmitte:
zoompan=z='min(zoom+0.0015,1.5)':d=700:x='if(gte(zoom,1.5),x,x+1/a)':y='if(gte(zoom,1.5),y,y+1)':s=640x360
Bis zu 1,5-fach vergrößern und immer in der Bildmitte schwenken:
zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'
Wie oben, aber ohne Pause:
zoompan=z='min(max(zoom,pzoom)+0.0015,1.5)':d=1:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'
Nur für die erste Sekunde des Eingabevideos 2x in die Bildmitte hineinzoomen:
zoompan=z='if(between(in_time,0,1),2,1)':d=1:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'
Weitere Beispiele für FFmpeg-Befehle finden Sie in der folgenden Anleitung:
- 20+ FFmpeg-Befehle für Anfänger
Hoffe das hilft.