Der schnellste Weg zum Konvertieren von Videos (Batch oder Single)?

26

Ich weiß, dass es hier viele Fragen zu Videocodierern gibt, aber meine Frage bezieht sich eher auf Workflow / Effizienz.

Für meine tägliche Arbeit muss ich häufig Videos aus vielen zufälligen Formaten konvertieren (normalerweise große AVI- , M4V- und was nicht) und sie konvertieren und in effiziente Dateien komprimieren, die wir zum Hochladen im Internet verwenden können. Formate, die ich erstellen muss, sind:

Ich muss allgemeine Vorlagen für einige Anwendungsfälle erstellen (auf die gleiche Quelle, 1080p oder 720p konvertieren ) und in der Lage sein, diese schnell zu verarbeiten und in die Warteschlange zu stellen.

Irgendwelche Ideen, wie man diesen Prozess in Ubuntu am besten durchführt?

Garrett
quelle
Ich weiß, dass es Avanti in Windows gibt, und ich denke, dass das Beste, was Sie in Linux bekommen können, entweder die avconv- Befehlszeile oder ein Frontend wie WinFF oder ConvertMe ist ... Vielleicht könnten Sie als letzte Möglichkeit Avanti in Wine ausprobieren .
Richard

Antworten:

52

Wenn Sie die Befehlszeile bevorzugen, können Sie ffmpeg(oder handbrake-cli) verwenden.

MP4

Angenommen, Sie verwenden eine neuere Version von ffmpeg:

ffmpeg -i input -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k \
-movflags +faststart -vf scale=-2:720,format=yuv420p output.mp4
  • -crf: Qualität. Der Bereich ist logarithmisch 0 (verlustfrei) bis 51 (schlechteste Qualität). Die Standardeinstellung ist 23. Der subjektive gesunde Bereich liegt bei ~ 18-28 oder so. Verwenden Sie den höchsten Wert, der Ihnen noch eine akzeptable Qualität bietet. Wenn Sie unpraktisch große Eingaben neu codieren, um sie auf YouTube oder ähnliches hochzuladen, versuchen Sie einen Wert von 17 oder 18, da diese Videodienste ohnehin neu codieren.

  • -preset: Codierungsgeschwindigkeit. Eine langsamere Voreinstellung bietet eine bessere Komprimierung (Qualität pro Dateigröße), ist jedoch langsamer. Verwenden Sie das Langsamste, für das Sie Geduld haben: ultraschnell, superschnell, sehr schnell, schnell, mittel (die Standardeinstellung), langsam, langsamer, sehr langsam.

  • -movflags +faststart: Ermöglicht die Wiedergabe von Videos, bevor diese beim progressiven Herunterladen vollständig heruntergeladen wurden. Nützlich, wenn Sie das Video hosten, ansonsten überflüssig, wenn Sie es auf einen Videodienst wie YouTube hochladen.

  • -vf scale=-2:720,format=yuv420p: Ein Filtergraph , der Videofilter skaliert und formatiert . Skalieren Sie auf eine Höhe von 720 Pixel und wählen Sie automatisch eine Breite, die das Seitenverhältnis beibehält. Stellen Sie dann sicher, dass das Pixelformat mit dummen Playern kompatibel ist.

  • -b:a 128k: Audio Bitrate. Wenn Ihr ffmpegKonto veraltet ist, müssen Sie es -strict experimentalzur Verwendung hinzufügen -c:a aac.

MOV

Da Ihre MOV- und MP4-Dateien wahrscheinlich die gleichen Video- und Audioformate enthalten, können Sie MP4 codieren und den MOV durch erneutes Muxen (mit Stream -Kopiermodus ) erstellen, anstatt ihn erneut zu codieren:

ffmpeg -i input.mp4 -codec copy output.mov

WMV

FFmpeg unterstützt nur WMV 7 und 8. Mir ist kein Open-Source-Encoder für Version 9 bekannt.

$ ffmpeg -encoders | grep -i windows
[...]
 V..... = Video
 A..... = Audio
 ------
 V..... wmv1                 Windows Media Video 7
 V..... wmv2                 Windows Media Video 8
 A..... wmav1                Windows Media Audio 1
 A..... wmav2                Windows Media Audio 2

Da ich mit diesen Encodern nicht vertraut bin, kann ich nur ein ungetestetes Beispiel geben:

ffmpeg -i input -c:v wmv2 -b:v 1024k -c:a wmav2 -b:a 192k output.wmv

Ffmpeg bekommen

Sie können einen Linux-Build von ffmpeg herunterladen oder eine schrittweise Anleitung zur Kompilierung von ffmpeg befolgen , um Ihren Build anzupassen.

Verwenden einer Bash "for-Schleife" zum Ausführen einer Stapelcodierung

So kodieren Sie alle Videos in einem Verzeichnis:

$ mkdir encoded
$ for f in *.avi; do ffmpeg -i "$f" -c:v libx264 -crf 23 -preset medium \
  -c:a aac -b:a 128k -movflags +faststart -vf scale=-2:720,format=yuv420p \
  "encoded/${f%.avi}.mp4"; done

Siehe auch

Logan
quelle
5

Versuchen Sie es mit HandBrake .

HandBrake ist ein Tool zum Konvertieren von Videos aus nahezu jedem Format in eine Auswahl moderner, weit verbreiteter Codecs. Zum Installieren drücken Sie einfach Ctrl+ Alt+ Tauf Ihrer Tastatur, um das Terminal zu öffnen. Führen Sie beim Öffnen die folgenden Befehle aus:

sudo add-apt-repository ppa:stebbins/handbrake-releases
sudo apt-get update
sudo apt-get install handbrake
Mitch
quelle