Hinweis: Diese Informationen basieren auf dem FFmpeg-Wiki zur VP9-Codierung . Weitere Informationen finden Sie in diesem Artikel - er wird ständig gepflegt und erweitert. Um die besten Ergebnisse zu erzielen, sollten Sie eine aktuelle Version von verwenden, ffmpeg
indem Sie sie von der Website herunterladen (ein statischer Build reicht aus; sie enthält den libvps-vp9
Encoder).
Variable Bitrate
Durch die VBR-Codierung erhalten Sie die optimale Gesamtqualität, da der Codierer frei wählen kann, wie viele Bits einem Frame zugewiesen werden sollen. Wählen Sie diesen Modus, es sei denn, Sie bereiten Videos für Streaming mit konstanter Bitrate vor.
Option 1: Kodierung mit konstanter Qualität
Wenn Sie nicht auf eine bestimmte Dateigröße abzielen möchten, sollten Sie die Bitrate in der Regel frei variieren lassen, da dies zu höchster Qualität führt. Sie können dies tun, indem Sie die Bitrate auf 0 und den konstanten Ratenfaktor ( CRF ) auf die gewünschte Qualitätsstufe setzen:
ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 output.webm
Der CRF-Wert kann zwischen 0 und 63 liegen. Niedrigere Werte bedeuten bessere Qualität. Die empfohlenen Werte liegen zwischen 15 und 35, wobei 31 für 1080p HD-Videos empfohlen wird. Google hat einen Leitfaden mit weiteren Informationen dazu .
Option 2: Codierung in zwei Durchgängen mit einer Zielbitrate
Wenn Ihre Datei eine bestimmte Ziel-Bitrate oder -Dateigröße haben soll, müssen Sie die Rate angeben und eine Codierung mit zwei Durchläufen verwenden (wodurch eine optimale Qualitätsverteilung gewährleistet wird). Hier wählen wir 5 MBit / s, was für 1080p-Inhalte ausreichen sollte.
ffmpeg -i input.mp4 -c:v libvpx-vp9 -b:v 5M -pass 1 -f webm /dev/null && \
ffmpeg -i input.mp4 -c:v libvpx-vp9 -b:v 5M -pass 2 output.webm
Windows-Benutzer müssen NUL
anstelle von /dev/null
und ^
anstelle von verwenden \
.
Konstante Bit-Rate
Erstens bietet libvpx Codierungsmodi mit konstanter und variabler Bitrate . Eine konstante Bitrate sollte nach Möglichkeit vermieden werden (sofern Sie nicht auf eine bestimmte Dateigröße oder ein bestimmtes Streaming-Szenario abzielen), da die durchschnittliche Qualität pro Dateigröße schlechter ist. Trotzdem können Sie versuchen, eine konstante Bitrate einzustellen, wenn für Sie nichts anderes funktioniert, z. B. mit 1 MBit / s:
ffmpeg -i input.mp4 -c:v libvpx-vp9 -minrate 5M -maxrate 5M -b:v 5M output.webm
Schauen Sie sich die Ausgabe an und erhöhen oder verringern Sie die Bitrate nach Ihren Wünschen (oder Dateigrößenbeschränkungen). Zum Beispiel können Sie 500K
oder 5M
und so weiter verwenden.
Sie müssen und die Bitrate angeben -minrate
, damit der Encoder CBR verwendet. Sie müssen alle denselben Wert haben. Andernfalls wird stattdessen eine andere Ziel-Bitrate ausgewählt und die VBR-Codierung durchgeführt, jedoch mit schlechter Qualität.-maxrate
-b:v
Audio
Der derzeit bevorzugte Audio-Codec für die VP9-Codierung ist Opus. FFmpeg wählt standardmäßig den erforderlichen Encoder und seine Optionen aus. Wenn Sie explizit festlegen möchten -c:a libopus
, können Sie dies auch tun. Lesen Sie die libopus
DokumentationWeitere Optionen finden .