Alle Videos in einem Verzeichnis als H.265 & Opus mit ffmpeg neu codieren
In unserem vorherigen Beitrag Videos als H.265 & Opus mit ffmpeg für Archivierung neu codieren haben wir ffmpeg-Befehle aufgelistet, um Videodateien für Archivierungszwecke als H.265 neu zu codieren.
In vielen Fällen sollen alle Dateien in einem Verzeichnis neu codiert werden. Der folgende Beispielbefehl (für Linux-Shell wie bash) codiert jede .avi-Datei im aktuellen Verzeichnis neu, vorausgesetzt, dass alle Dateien nicht-interlaced sind (dies beeinflusst die ffmpeg-Flags – siehe unseren vorherigen Beitrag für weitere Details).
for i in *.avi ; do ffmpeg -i "$i" -c:v libx265 -crf 26 -c:a libopus -b:a 56k "${i}.mkv" ; doneAus mymovie.avi erzeugt dieses Skript mymovie.avi.mkv und spart etwa 70% der Dateigröße (das hängt natürlich stark vom Video selbst ab).
Dieser Befehl kann leicht nach Belieben angepasst werden – z.B. durch Codieren von .mp4-Dateien statt .avi oder Verwendung eines anderen CRF oder einer anderen Audio-Bitrate. Meiner Meinung nach sind dies jedoch sinnvolle Standardwerte für die meisten Videos, bei denen der Fokus darauf liegt, einen Kompromiss zwischen guter Videoqualität und Dateigröße zu finden.