Ich habe eine MP4-Datei einer Bildschirmaufnahme, die ich zuschneiden muss. Wie kann ich dies erreichen, ohne teure Tools wie Adobe Premier oder Final Cut zu verwenden? Ich bevorzuge ffmpeg
, weil ich es bereits verwendet habe.
Antwort
Verwenden Sie die crop
Filter :
ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4
Wo Folgende Optionen stehen zur Verfügung:
-
out_w
ist die Breite des Ausgaberechtecks -
out_h
ist die Höhe des Ausgaberechtecks -
x
undy
geben die obere linke Ecke des Ausgaberechteck
Originalbild
Originalbild 320×240
Beispiel 1
Zum Zuschneiden eines 80 × 60-Abschnitts ab Position (200, 100):
ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4
- Das Audio wird in diesem Beispiel Stream kopiert . Daher wird eine Neucodierung vermieden.
Beispiel 2
So beschneiden Sie das untere rechte Viertel:
ffmpeg -i in.mp4 -filter:v "crop=in_w/2:in_h/2:in_w/2:in_h/2" -c:a copy out.mp4
Dies entspricht:
ffmpeg -i in.mp4 -filter:v "crop=320/2:240/2:320/2:240/2" -c:a copy out.mp4
Dies entspricht:
ffmpeg -i in.mp4 -filter:v "crop=160:120:160:120" -c:a copy out.mp4
- Sie können mit
in_w
undin_h
wie in diesem ersten Beispiel gezeigt. Die Ausgabebreite und -höhe kann auch mitout_w
undout_h
verwendet werden.
Beispiel 3
20 Pixel von oben und 20 von unten zuschneiden:
ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4
- Der Filter zentriert den Zuschnitt automatisch, wenn
x
undy
werden wie in diesem Beispiel weggelassen.
Vorschau
Sie können eine Ernte (heh heh) nehmen und sie live mit :
ffplay -i input -vf "crop=in_w:in_h-40"
Auf diese Weise können Sie experimentieren und das Zuschneiden anpassen, ohne codieren, anzeigen und wiederholen zu müssen.
Hinweise
-
Standardcodierer für MP4 ist
libx264
(H.264-Video) odermpeg4
(MPEG- 4 Teil 2 Video) abhängig von Ihrerffmpeg
bauen. Weitere Informationen finden Sie unter FFmpeg-Wiki: H.264 Video Encoding Guide . -
Anstatt zuzuschneiden und neu zu schneiden Beim Codieren sollten Sie bei der Wiedergabe beschneiden. Dies ist mit jedem Spieler möglich, der es wert ist, verwendet zu werden.
-
Alte
ffmpeg
verwendete Builds-croptop
,-cropbottom
,-cropleft
,-cropright
Optionen anstelle der Optionencrop
Filter. Wenn dies bei Ihnen der Fall ist, erhalten Sie eine moderneffmpeg
. Die Entwicklung ist sehr aktiv und es gibt keinen Grund, eine Antiquität zu verwenden.
Kommentare
- Dies funktioniert mit ' avconv ' jetzt.
- Erwähnenswert ist diese Technik (mit der
crop
filter) codiert das Video neu, siehe stackoverflow.com/questions/33378548/… Die Codierung ist für Sie - wichtig, um das veraltete
-filter:v
auf das aktuellere und einfacher zu tippende-vf
zu ändern . Prost! - Wenn Sie ' versuchen, schwarze Balken um Ihr Video (Piallarbox, Letterbox, Windowbox usw.) zu entfernen, verwenden Sie
cropdetect
zuerst die Beschneidungsparameter für den ffmpeg-Druck für Sie:ffmpeg.exe -i vid.mp4 -vf cropdetect out.mp4
- Dieser Zuschneidefilter funktioniert hervorragend! Um den Begrenzungsrahmen zu bestimmen, der zum Zuschneiden eines Videos benötigt wird, habe ich einen Videorahmen mit ffmpeg in ein Bild exportiert. Öffnen Sie dann das Bild mit GIMP, wo ich einen Begrenzungsrahmen für den Bereich zeichnen kann, in dem ich das Video zuschneiden wollte, und dann die X-, Y-, B- und H-Informationen aus dem Zeigerfenster abrufen kann. Fragen Sie, ob dies nicht klar genug ist.