FFmpeg-Komprimierung: CRF vs CBR vs VBR — Welche wählen?

Zusammenfassung vorab: FFmpeg-Videokomprimierung bietet drei Bitraten-Steuerungsmodi — CRF (Constant Rate Factor) für Archivierung und lokale Speicherung, CBR (Constant Bitrate) für Live-Streaming und VBR (Variable Bitrate) für Streaming-on-Demand. Dasselbe 1080p-Video: CRF 23 erzeugt 42 MB bei optimaler Bildqualität, CBR 4 Mbps erzeugt 38 MB bei stabilster Bitrate, VBR erzeugt 36 MB bei kleinster Dateigröße aber schwankender Bildqualität. Die falsche Wahl führt entweder zu Größenverschwendung oder Qualitätsverlust. Im Folgenden wird aus drei Perspektiven — Prinzip, Befehl und Praxis — erläutert, wie die richtige Wahl getroffen wird.

Wenn Sie mit der Gesamtmethodik der Videokomprimierung noch nicht vertraut sind, empfehlen wir, zunächst den Leitfaden zur Videokomprimierung zu lesen.

1. Prinzipvergleich der drei Bitraten-Modi

Der Bitraten-Steuerungsmodus der Videocodierung bestimmt, wie der Encoder Bit-Ressourcen zuweist. Der Kernunterschied zwischen den Modi liegt darin, „was priorisiert wird" — CRF priorisiert die Bildqualität, CBR priorisiert die Bitratenstabilität, VBR bietet einen Kompromiss. Das Verständnis dieser drei Modi ist die Grundlage für gute Videokomprimierung.

VergleichsdimensionCRF (Constant Rate Factor)CBR (Constant Bitrate)VBR (Variable Bitrate)
KernzielKonstante BildqualitätKonstante BitrateKontrollierbare Dateigröße
Bitraten-ZuweisungDynamisch nach BildkomplexitätFeste Bitrate pro FrameSchwankt innerhalb von Ober-/Untergrenzen
Bildqualitätskonsistenz★★★★★★★☆☆☆★★★☆☆
Dateigrößenkontrolle★★☆☆☆★★★★★★★★★☆
Codierungsgeschwindigkeitmittelam schnellstenlangsamer
AnwendungsszenarioArchivierung/lokale SpeicherungLive-StreamingStreaming-on-Demand

Einfach gesagt: CRF lässt den Encoder „die Bitrate je nach Bildschwierigkeit zuweisen" — Action-Szenen bekommen mehr Bitrate, statische Dialoge weniger, sodass jedes Frame dieselbe Bildqualität hat. CBR „gibt unabhängig von der Bildkomplexität immer dieselbe Bitrate" — einfache Szenen verschwenden Bitrate, komplexe Szenen haben zu wenig Bitrate und zeigen Blockartefakte. VBR liegt dazwischen und lässt den Encoder innerhalb eines Bitratenbereichs selbst regulieren.

2. FFmpeg-Befehlsbeispiele und Parameter

Die drei Modi haben in FFmpeg unterschiedliche Befehlsschreibweisen und Schlüsselparameter. Im Folgenden werden die Standard-Befehlsvorlagen und Parametererklärungen für jeden Modus gegeben.

ModusSchlüsselparameterParameterklärungTypischer Wertebereich
CRF-crfBildqualitätsfaktor, niedrigere Werte = höhere Qualität0–51 (18–28 gebräuchlich)
CRF-Einschränkung-maxrate / -bufsizeBegrenzt die Spitzenbitratemaxrate 2–8 Mbps
CBR-b:v / -minrate / -maxrateAlle drei auf denselben Wert setzen für CBR2–8 Mbps
VBR-b:vZieldurchschnittsbitrate2–6 Mbps
VBR-Bereich-minrate / -maxrateBitrate-Schwankungsbereichmin 1–2 Mbps / max 4–8 Mbps
Allgemein-presetBalance zwischen Codierungsgeschwindigkeit und Komprimierungsrateultrafast–fast–medium–slow

1. CRF-Modus-Befehl

CRF ist der am besten empfohlene Modus für die Archivkomprimierung. Der Encoder weist die Bitrate automatisch nach der Bildkomplexität zu und gewährleistet konsistente Bildqualität pro Frame. CRF 23 ist der Standardwert für H.264 und eignet sich für die meisten Szenarien.

Reiner CRF-Modus (ohne Bitrate-Obergrenze):
ffmpeg -i input.mp4 -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k output.mp4

Eingeschränkter CRF-Modus (mit Bitrate-Obergrenze, für Szenarien mit Bitrate-Limit):
ffmpeg -i input.mp4 -c:v libx264 -crf 23 -maxrate 4M -bufsize 8M -preset medium output.mp4

2. CBR-Modus-Befehl

CBR wird implementiert, indem minrate, maxrate und b:v auf denselben Wert gesetzt werden. Live-Streaming muss CBR verwenden, um eine stabile Bitrate zu gewährleisten.

Standard-CBR-Modus:
ffmpeg -i input.mp4 -c:v libx264 -b:v 4M -minrate 4M -maxrate 4M -bufsize 8M -preset fast output.mp4

Live-Streaming-Modus (mit RTMP):
ffmpeg -i input.mp4 -c:v libx264 -b:v 4000k -minrate 4000k -maxrate 4000k -bufsize 8000k -g 60 -preset fast -f flv rtmp://server/live/stream

3. VBR-Modus-Befehl

VBR setzt eine Zieldurchschnittsbitrate, innerhalb derer der Encoder frei reguliert. Geeignet für Streaming-on-Demand und andere Szenarien, die eine Größenschätzung erfordern.

Standard-VBR-Modus:
ffmpeg -i input.mp4 -c:v libx264 -b:v 4M -preset medium -c:a aac -b:a 128k output.mp4

Zweipass-VBR (Two-pass, präzisere Größenkontrolle):
ffmpeg -y -i input.mp4 -c:v libx264 -b:v 4M -pass 1 -an -f mp4 /dev/null
ffmpeg -i input.mp4 -c:v libx264 -b:v 4M -pass 2 -c:a aac -b:a 128k output.mp4

3. Praxisdaten: Derselbe Film in drei Modi im Vergleich

Wir haben dasselbe 1080p/30fps-Testvideo (Originalgröße 350 MB, H.264-codiert, 5 Minuten Laufzeit) mit drei Modi komprimiert und Dateigröße, Bildqualität und Codierungszeit verglichen.

ModusParameterAusgabegrößeKomprimierungsrateBildqualitätsbewertungCodierungszeit
CRF 18-crf 18 -preset medium85,2 MB75,7%★★★★★142 Sek.
CRF 23-crf 23 -preset medium42,1 MB88,0%★★★★☆128 Sek.
CRF 28-crf 28 -preset medium22,5 MB93,6%★★★☆☆115 Sek.
CBR 4M-b:v 4M -minrate 4M -maxrate 4M38,3 MB89,1%★★★☆☆98 Sek.
CBR 2M-b:v 2M -minrate 2M -maxrate 2M19,4 MB94,5%★★☆☆☆92 Sek.
VBR 4M-b:v 4M -preset medium36,8 MB89,5%★★★★☆135 Sek.
VBR 4M Two-pass-b:v 4M -pass 236,2 MB89,7%★★★★☆268 Sek.

Die Praxisdaten zeigen mehrere Schlussfolgerungen: CRF 23 erreicht den besten Kompromiss zwischen Bildqualität und Dateigröße (42 MB, viereinhalb Sterne). CBR 4M hat eine ähnliche Dateigröße wie CRF 23, aber etwas schlechtere Bildqualität (Blockartefakte in komplexen Szenen). VBR Two-pass liefert die präziseste Dateigröße, verdoppelt jedoch die Codierungszeit. Für Archivierungsszenarien ist CRF 23 die optimale Wahl.

Betrachten wir nun den Einfluss verschiedener Presets auf CRF 23:

presetAusgabegrößeCodierungszeitGrößenunterschiedEmpfohlenes Szenario
ultrafast58,2 MB32 Sek.+38%Echtzeit-Vorschau
fast45,6 MB68 Sek.+8%Schnelle Komprimierung
medium42,1 MB128 Sek.BasisAllgemeiner Standard
slow39,8 MB285 Sek.-5%Hochwertige Archivierung
slower38,5 MB612 Sek.-9%Maximale Komprimierung

Empfohlene Bitraten für verschiedene Auflösungen als Referenz bei der Wahl der CBR/VBR-Zielbitrate:

AuflösungFramerateCBR empfohlenVBR-ZielCRF empfohlenAnwendungsszenario
480p30 fps1,0 Mbps1,0 MbpsCRF 24Mobile niedrige Auflösung
720p30 fps2,5 Mbps2,5 MbpsCRF 23Web-Standardauflösung
1080p30 fps4,0 Mbps4,0 MbpsCRF 23HD universell
1080p60 fps6,0 Mbps6,0 MbpsCRF 22HD hohe Framerate
1440p30 fps8,0 Mbps8,0 MbpsCRF 222K-Qualität
2160p (4K)30 fps16,0 Mbps16,0 MbpsCRF 20Ultra-HD-Archivierung

4. Szenarien-Empfehlung: Unterschiedliche Modi für unterschiedliche Zwecke

Unterschiedliche Anwendungsszenarien haben unterschiedliche Anforderungen an Bildqualität, Dateigröße und Bitratenstabilität. Der Kern der Moduswahl ist die Übereinstimmung mit den Szenarioanforderungen.

AnwendungsszenarioEmpfohlener ModusEmpfohlene ParameterWahlgrundErwartete Komprimierungsrate
Lokale ArchivspeicherungCRF-crf 23 -preset mediumBildqualität vorrangig, optimale Größe85%–90%
Hochwertige ArchivierungCRF-crf 18 -preset slowNahezu verlustfrei, langfristige Speicherung70%–80%
Live-StreamingCBR-b:v 4M -minrate 4M -maxrate 4MStabile Bitrate, verhindert Ruckelnje nach Quelle
Streaming-on-DemandVBR Two-pass-b:v 4M -pass 2Präzise Größe, ausgewogene Qualität80%–90%
Mobile WiedergabeEingeschränkter CRF-crf 26 -maxrate 2M -bufsize 4MBitrate-Limit für mobile Netzwerke90%–95%
Web-VideoEingeschränkter CRF-crf 24 -maxrate 3M -bufsize 6MBalance zwischen Qualität und Ladezeit88%–92%
ÜberwachungsaufzeichnungCBR-b:v 1M -minrate 1M -maxrate 1MKonstante Bitrate für Speicherberechnungje nach Quelle
Video-E-MailCRF-crf 28 -preset fastGröße vorrangig, akzeptable Qualität93%–96%

SmartSlim nutzt bei der Videokomprimierung eine selbstentwickelte Rust-Komprimierungs-Engine mit einer integrierten szenenbasierten Parameterbibliothek — 4 Komprimierungsstufen × 15 Szenarien × 5 Leistungsstufen = 300 Kombinationen. Der beste Bitraten-Modus und die besten Parameter werden automatisch anhand des Videzwecks gewählt, ohne dass FFmpeg-Befehle manuell angepasst werden müssen. Unternehmensanwender können über das SDK in Geschäftssysteme integrieren und die Videokomprimierung automatisieren.

Weitere Codec-Vergleiche finden Sie unter H.264 vs H.265 vs AV1 Codec-Vergleich und Methoden zur Bewertung der Videokomprimierungsqualität.

5. Häufig gestellte Fragen (FAQ)

F1: Ist CRF oder VBR besser für die FFmpeg-Videokomprimierung?

Für Archivierung und lokale Speicherung ist CRF besser. CRF zielt auf konstante Bildqualität ab — bei komplexen Szenen wird mehr Bitrate zugewiesen, bei einfachen Szenen weniger — die Bildqualität bleibt konsistent und die Dateigröße ist optimal. Empfohlene CRF-Werte: 18–28, wobei 18 nahezu visuell verlustfrei ist, 23 der Standard-Kompromiss ist und 28 noch akzeptable Qualität bei geringerer Dateigröße bietet. VBR eignet sich für Szenarien mit Bitrate-Obergrenze wie Streaming, bietet jedoch weniger stabile Bildqualität als CRF.

F2: Welcher CRF-Wert liefert die beste Bildqualität?

Ein niedrigerer CRF-Wert bedeutet höhere Bildqualität und größere Dateien. Bei H.264-Codierung: CRF 0 ist verlustfrei, CRF 18 ist nahezu visuell verlustfrei (ca. 50% der Originalgröße), CRF 23 ist der FFmpeg-Standardwert (ca. 25% der Originalgröße), CRF 28 bietet akzeptable Qualität (ca. 12% der Originalgröße). Empfohlener Bereich: 18–28; für die meisten Szenarien genügt CRF 23, für hohe Qualität CRF 18–20.

F3: Sollte für Live-Streaming CBR oder VBR verwendet werden?

Für Live-Streaming wird CBR empfohlen. Live-Streaming erfordert höchste Bitratenstabilität — CBR hält die Bitrate konstant und verhindert Ruckeln durch Netzwerkschwankungen. Streaming-Plattformen fordern meist eine feste Bitrate (z. B. Twitch 6000 kbps, Bilibili 4000 kbps), die CBR präzise einhält. VBR kann bei komplexen Szenen die Bitrate über die Bandbreitengrenze treiben und Frame-Drops verursachen, während CBR stets stabil bleibt. Empfehlung: CBR mit maxrate = bufsize = Zielbitrate.

F4: Was ist der Unterschied zwischen den beiden VBR-Modi von FFmpeg?

FFmpeg bietet zwei VBR-Stufen: -crf mit maxrate/bufsize ist Constrained VBR (eingeschränktes VBR), dessen Bildqualität nahe an reinem CRF liegt, aber die Bitrate-Spitze begrenzt. -b:v mit -minrate/-maxrate ist traditionelles VBR, bei dem die Bitrate innerhalb eines Bereichs schwankt. Constrained VBR ist besser für die praktische Anwendung geeignet, da es sowohl Bildqualität als auch Spitzenbitrate kontrolliert. Traditionelles VBR eignet sich für Szenarien mit präziser Bitratenbereich-Kontrolle, z. B. Anpassung an bestimmte Bandbreitenumgebungen.

Zusammenfassung

Die drei FFmpeg-Bitraten-Modi haben jeweils ihr bestes Szenario: CRF priorisiert die Bildqualität für Archivierung (empfohlen CRF 23), CBR priorisiert die Stabilität für Live-Streaming (empfohlen 4 Mbps konstant), VBR priorisiert die Größenkontrolle für Streaming-on-Demand (empfohlen Two-pass). Die richtige Moduswahl ist der erste Schritt der Videokomprimierung — Archivierung wählt CRF, Live-Streaming wählt CBR, On-Demand wählt VBR. Wer sich dieses Prinzip merkt, macht nichts falsch.

Wer keine FFmpeg-Befehle manuell schreiben möchte, kann SmartSlim nutzen — eine sofort einsatzbereite Videokomprimierungslösung basierend auf einer selbstentwickelten Rust-Komprimierungs-Engine mit 300 szenenbasierten Parameterkombinationen, Unterstützung für mp4/mkv/avi/mov/wmv/flv/webm/m4v und 8 Videoformate, lokale Komprimierung ohne Datenexport.

Dateien komprimieren? Probieren Sie SmartSlim

Basierend auf einer selbstentwickelten Rust-Komprimierungs-Engine, unterstützt 10 Kategorien und über 40 Formate, darunter PDF, Bilder, Video, Office und OFD, mit lokaler Komprimierung, die Ihre Daten vor Ort behält.