Wie kann ich mit avconv Videos um 180 Grad drehen?

24

Ich möchte das Video (mp4) um 180 Grad drehen, aber nicht drehen. Kann man das mit avconv machen?

sobi
quelle
Bei beiden vorhandenen Antworten stellte ich fest, dass sie mit den MP4-Dateien einer Hero 3-Kamera funktionieren, allerdings erst, nachdem ich -c:adem Befehl eine Kopie hinzugefügt hatte (kurz vor dem Ausgabedateinamen). Ich fand auch, dass die zweite Version von nicht zu unterscheidender Qualität war, aber ungefähr 50% schneller als die verkettete Übersetzungsversion.
Simon

Antworten:

31

Es ist möglich, den transposeVideofilter zu verwenden. Sie können nicht um 180 Grad drehen, aber Sie können um 90 Grad drehen und den Filter verketten.

avconv -i video.mp4 -vf transpose=1,transpose=1 out.mkv

Siehe transposein der avconvManpage: http://manpages.ubuntu.com/manpages/quantal/en/man1/avconv.1.html

Phoibos
quelle
Dadurch wurde mein Video gedreht, aber der Qualitätsverlust (Auflösung und Bildrate) war enorm (iphone .mov-Datei).
Gringo Suave
transponieren = Uhr funktioniert jetzt siehe meine Antwort
Elder Geek
15

Ja, aber Sie müssen Ihrem Befehl einige zusätzliche Optionen hinzufügen, damit er ordnungsgemäß funktioniert. Transponieren und vflip / hflip sollten den Trick machen, aber wenn Sie avconv nicht genauer mitteilen, was Sie wollen, erhalten Sie wahrscheinlich einen Ausgabeversuch von sehr geringer Qualität:

 avconv -i original.mp4 -vf "hflip,vflip" -codec:v libx264 -preset slow -crf 20 -codec:a copy flipped.mp4

Beachten Sie die -crfOption. Das setzt die Ausgabequalität. Es geht logarithmisch von 0 (verlustfrei) aufwärts. In den meisten Fällen möchten Sie wahrscheinlich einen Wert zwischen 19 und 25. -presetLegt die Geschwindigkeit der Codierung fest, entweder "langsam", "mittel" oder "schnell". Langsam sollten Sie kleinere Dateigrößen mit einem offensichtlichen Kompromiss bekommen. Sie sollten sich -codec:vdem Original anpassen . Wenn Sie diese Optionen nicht einstellen, erhalten Sie die Standardeinstellungen, die beim Umblättern von iPhone-Videos nicht funktionieren.

Lunchboxer
quelle
Unrecognized option 'preset' Failed to set value 'slow' for option 'preset' Das habe ich bekommen
Karel Bílek
... und ohne habe ichUnknown encoder 'libx264'
Karel Bílek
1
apt-get install libavcodec-extra-53gelöst
Karel Bílek
6

Eine weitere Methode mit avconv ist die Verwendung von vflip- und hflip-Filtern. Sollte schneller und vielleicht in besserer Qualität laufen:

avconv -i video.mp4 -vf vflip,hflip out.mp4
wcarlson
quelle
Same: Dies drehte mein Video, aber der Qualitätsverlust (Auflösung und Bildrate) war enorm (iphone .mov-Datei).
Gringo Suave
1
@GringoSuave wcarlson hat Ihnen ein reduziertes Beispiel gegeben, Sie müssen noch alle -codec: v ... und andere Tags
hinzufügen
1

Ich tat dies:

avconv -i invertedOne.mp4 -c:a copy -vf "hflip,vflip" rightOne.mp4

Full HD-Video, großartige Ergebnisse mit nicht wahrnehmbarem Qualitätsverlust

jap1968
quelle
1

Für avconv oder ffmpeg Unter 14.04 oder höher

Seit der Beantwortung dieser Frage mit @phoibos quality wurden einige Änderungen an der libav-Dokumentation vorgenommen. Sie können ein Video um 180 Grad drehen, indem Sie 2 90-Grad-Befehle miteinander verketten (durch Komma getrennt). Dies wurde mit dem Befehl erreicht

avconv -i Eingabedatei -vf transponieren = Clock, transponieren = Clock Ausgabedatei

für Rechtslauf.

In ffmpeg ist die Syntax dieselbe.

ffmpeg -i Eingabedatei -vf transponieren = Clock, transponieren = Clock-Ausgabedatei

Dabei ist Eingabedatei Ihre unterstützte Eingabevideodatei und Ausgabedatei Ihre gewünschte Ausgabedatei.

Bei Drehung gegen den Uhrzeigersinn die Uhr durch die Uhr ersetzen

Quellen:

https://libav.org/avconv.html#transpose

Testen auf Ubuntu 14.04.5 und 16.04 LTS

Elder Geek
quelle