So etwas sollte mit den richtigen Parametern für jeden Fall funktionieren:
Hinweis: Die ursprüngliche Antwort wurde unter folgendem Link veröffentlicht: Wie kann ich ein Video mit ffmpeg zuschneiden? das ursprünglich von mir gepostet und mehrfach bearbeitet wurde, um es auf die neuesten optionen in den neuesten versionen von ffmpeg zu aktualisieren. Vielen Dank an Slhck , Jonathan. , Anton Rudeshko , LordNeckbeard und zukünftige Betreuer.
Verwenden Sie in neueren Versionen von FFmpeg den crop
Filter :
ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4
Wo die Optionen wie folgt sind:
out_w
ist die Breite des Ausgaberechts
out_h
ist die Höhe des Ausgaberechts
x
und y
geben Sie die linke obere Ecke des Ausgaberechts an
Original Bild
Ursprüngliches Bild 320x240
Beispiel 1
So schneiden Sie einen 80 × 60-Abschnitt ab Position (200, 100) zu:
ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4
- In diesem Beispiel wird das Audio per Stream kopiert , sodass eine Neucodierung vermieden wird.
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 ist dasselbe wie:
ffmpeg -i in.mp4 -filter:v "crop=320/2:240/2:320/2:240/2" -c:a copy out.mp4
Welches ist das gleiche wie:
ffmpeg -i in.mp4 -filter:v "crop=240:120:240:120" -c:a copy out.mp4
- Sie können mit
in_w
und auf die Größe des Eingabebilds verweisen, in_h
wie in diesem ersten Beispiel gezeigt. Die Ausgabebreite und -höhe kann auch mit out_w
und verwendet werden out_h
.
Beispiel 3
Beschneide 20 Pixel von oben und 20 Pixel von unten:
ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4
- Der Filter wird automatisch zentriert die Ernte , wenn
x
und y
ist wie in diesem Beispiel weggelassen.
Vorschau
Sie können eine Ernte (heh heh) nehmen und sie live in der Vorschau anzeigen mit ffplay
:
ffplay -i input -vf "crop=in_w:in_h-40"
Auf diese Weise können Sie experimentieren und den Zuschnitt anpassen, ohne ihn codieren, anzeigen und wiederholen zu müssen.
Anmerkungen
crop
Filterdokumentation
Der Standard-Encoder für MP4 ist libx264
(H.264-Video) oder mpeg4
(MPEG-4 Part 2-Video), abhängig von Ihrem ffmpeg
Build. Weitere Informationen finden Sie im FFmpeg Wiki: H.264 Video Encoding Guide .
Anstatt das Format zu beschneiden und neu zu codieren, sollten Sie es bei der Wiedergabe beschneiden. Dies ist mit jedem Spieler möglich, der es wert ist, benutzt zu werden.
Alte ffmpeg
baut gebrauchte -croptop
, -cropbottom
, -cropleft
, -cropright
Optionen anstelle des crop
Filters. Wenn dies für Sie der Fall ist, dann holenffmpeg
Sie sich ein modernes . Die Entwicklung ist sehr aktiv und es gibt keinen Grund, eine Antiquität zu verwenden.
ffplay
denen dasffmpeg
Zuschneiden der Videobildschirmgröße in der Praxis funktioniert.