Cum să folosești CRF (Constant Rate Factor) cu FFmpeg
In this tutorial, you'll learn about Cum să folosești CRF (Constant Rate Factor) cu FFmpeg. We cover key concepts, practical examples, and best practices.
Problema
CRF (Constant Rate Factor) este cea mai simplă metodă de a controla calitatea în FFmpeg. Fără înțelegerea scalei CRF și a impactului asupra dimensiunii, rezultatul poate fi f prea mare sau calitatea prea slabă.
Soluția Rapidă
Fix 1: CRF de bază
GREȘIT — fără specificarea CRF:
ffmpeg -i input.mp4 -c:v libx264 output.mp4
# CRF implicit 23, dar poate nepotrivit
CORECT — specifică CRF explicit:
ffmpeg -i input.mp4 -c:v libx264 -crf 23 output.mp4
Fix 2: Valori CRF recomandate
# CRF 18 — calitate vizual aproape identică cu originalul (fișier mare)
ffmpeg -i input.mp4 -c:v libx264 -preset slow -crf 18 output.mp4
# CRF 23 — calitate bună, dimensiune rezonabilă (implicit)
ffmpeg -i input.mp4 -c:v libx264 -preset medium -crf 23 output.mp4
# CRF 28 — calitate acceptabilă, fișier mic
ffmpeg -i input.mp4 -c:v libx264 -preset medium -crf 28 output.mp4
Fix 3: CRF pentru diferite codecuri
# H.264 — CRF 18-28 (interval practic)
ffmpeg -i input.mp4 -c:v libx264 -crf 23 output.mp4
# H.265 — CRF 24-34 (cu ~6 puncte peste H.264)
ffmpeg -i input.mp4 -c:v libx265 -crf 28 output.mp4
# VP9 — CRF 25-35
ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 output.webm
# AV1 (SVT-AV1) — CRF 30-45
ffmpeg -i input.mp4 -c:v libsvtav1 -crf 35 output.mp4
Fix 4: CRF cu constrângeri de bitrate
# CRF 23, dar nu mai mult de 4Mbps
ffmpeg -i input.mp4 -c:v libx264 -crf 23 -maxrate 4M -bufsize 8M output.mp4
Fix 5: CRF pentru arhivă (calitate maximă)
# H.264 CRF 18, preset veryslow — calitate maximă
ffmpeg -i input.mp4 -c:v libx264 -preset veryslow -crf 18 output.mp4
Folosește DodaTech CRF Calculator pentru a estima dimensiunea fișierului în funcție de valoarea CRF.
Prevenție
- CRF 23 este valoarea implicită și un bun punct de plecare.
- Scade CRF cu 6 când treci de la H.264 la H.265 pentru aceeași calitate.
- Combină CRF cu
-maxratepentru a controla bitrate-ul maxim. - Alege preset-ul în funcție de timpul disponibil:
mediumpentru echilibru,slow/veryslowpentru compresie mai bună.
Greșeli Comune cu CRF
- CRF prea mic pentru cazul de utilizare — CRF 18 pentru conținut web este o risipă de bandă.
- Confundarea CRF între codecuri — CRF 23 la H.265 este mult mai bun decât CRF 23 la H.264.
- Așteptarea unui bitrate constant — CRF produce bitrate variabil; nu este potrivit pentru streaming live.
Aceste greșeli apar frecvent în cod FFmpeg real. Contribuitorii DodaTech au identificat aceste patternuri prin analiza proiectelor open-source și a sistemelor de producție.
Exercițiu Practic
Scrie o comandă FFmpeg care encodează un videoclip cu CRF 20, preset slow, și maxrate 8Mbps pentru H.264, potrivit pentru arhivare de calitate.
Acest exercițiu întărește conceptele acoperite în acest ghid. Încearcă să-l implementezi înainte de a verifica soluțiile online.
FAQ
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro