Da ich etwas Zeit&Nerven hatte habe ich mich mit dem x264 CLI beschäftigt.
=> Hab mal ein kleines Mapping von CLI Options zu vfw Option gemacht und darunter die Empfehlungen aus dem Wissenswertes des vfw Frontends dazugeschrieben.
Frame-type options:
Name in der CLI <=> Name im vfw Frontend
1. --keyint <integer> <=> Max IDR-keyframe interval
2. --min-keyint <integer> <=> Min IDR-keyframe interval
3. --scenecut <integer> <=> Scene Cut Threshold
4. --bframes <integer> <=> Max consecutive (B-frames)
5. --no-b-adapt <=> deaktivieren der Adaptive B-Frames
6. --b-bias <integer> <=> Bias (B-Frames)
7. --b-pyramid <=> Use as reference (B-frames)
8. --no-cabac <=> CABAC deaktivieren
9. --ref <integer> <=> Max reference Frames
10.--nf <=> deaktivieren des Deblocking Filters
11.--filter <alpha:beta> <=> Deblocking Filter Strength und Threshold
Empfehlungen:
1. --keyint 250 bei PAL bzw. --keyint 240 bei NTSC Material
2. 25 bei PAL bzw. 24 bei NTSC Material
3. einfach weglassen und so den Standardwert --scenecut 40 nehmen
4. --bframes 3
5. die Option nicht benutzen und so B-Frames als Referenzen zulassen
6. einfach weglassen und so den Standardwert --b-bias 0 nehmen
7. aktivieren mittels: --b-pyramid
8. die Option nicht benutzen und so CABAC verwenden
9. --ref 3 bei DVD Auflösungen und höher,--ref 6 bei 1/2 DVD Auflösung und niedriger
10.die Option nicht benutzen und so den Inloop-Deblocking-Filter verwenden
Ratecontrol:
1. --qp <integer> <=> Single pass - Quantizer, wobei 0 hier einer verludtfreien Kompression entspricht
2. --bitrate <integer> <=> Single pass - Bitrate bzw. Bitrate für den Multipass
3. --crf <integer> <=> Hier wird im Gegensatz zu 1. kein konstanter, sondern ein durchschnittlicher Quantizer angegeben
4. --qpmin <integer> <=> Quality - Min QP
5. --qpmax <integer> <=> Quality - Max QP
6. --qpstep <integer> <=> Quality - Max QP Step
7. --ratetol <float> <=> nur für Single pass encodings interessant, legt fest wie stark die Datenrate vom zielwert abweichen darf (etwa +/- 0.5% pro Punkt)
8. --vbv-maxrate <integer> <=> legt die maximale Datenrate fest (siehe Wissenswertes rund um Xvid)
9. --vbv-bufsize <integer> <=> legt die Video Buffergröße fest (siehe Wissenswertes rund um Xvid)
10. --vbv-init <float> <=> legt fest wieviel des VBVs initial belegt sind (ist mir auch nicht ganz klar ;))
11. --ipratio <float> <=> legt fest wieviel höher die Quantizer eines P-Frames im Vergleich zu den I-Frames seien soll auf die er referenziert
12. --pbratio <float> <=> legt fest wieviel höher die Quantizer eines B-Frames im Vergleich zu den P-Frames seien soll auf die er referenziert
13. --chroma-qp-offset <integer> <=> legt fest um wieviel Quantizerstufen Farbinformationen stärker als Helligkeitsinformationen quantisiert werden sollen
14. --pass <1|2|3> <=> Multi pass - 1st/nth pass
15. --stats <string> <=> Statsfile name
16. --rceq <string> <=> erlaubt einem selber eine Funktion festzulegen, nach der die Flußkontrolle arbeitet
17. --qcomp <float> <=> kleinere Werte geben geben mehr Bits zu einfachen Szenen, höhere Werte geben mehr Bits zu komplexeren Szenen
18. --cplxblur <float> <=> verringert Schwankungen in der Quantizervergabe vor der Curve Compression (keine Ahnung was es genau bewirkt=>kann ja wer mal in den Code gucken )
19. --qblur <float> <=> verringert Schwankungen in der Quantizervergabe nach der Curve Compression (keine Ahnung was es genau bewirkt=>kann ja wer mal in den Code gucken )
20. --zones <zone0>/<zone1>/... <=> Zone Options, wobei jede Zone aus <start frame>,<end frame> und <option> besteht, wobei die Option hier q=<integer> (force QP) oder b=<float> (bitrate multiplier) beinhalten muß
Empfehlungen:
1. --qp 0 wenn man verlustfrei Komprimieren will ansonsten sind --qp 20 und --qp 30 ganz brauchbar
2. --bitrate 1000 und höher sollte man bei DVD Auflösungen schon nehmen, würde empfehlen einen Bitratenklkulator zur Hilfe zu nehmen
3. --crf 20 oder --crf 30 sind ganz brauchbar
4. einfach weglassen und so den Standardwert --qpmin 10 nehmen
5. einfach weglassen und so den Standardwert --qpmax 10 nehmen
6. --qpstep 4 ist der Standardwert, aber gerade bei niedrigen Datenraten kann man hier durchaus auch --qpstep 8 nehmen
7-13. einfach weglassen und so die Standardwerte nehmen, man kann gerade bei 11-13 sicher noch nette Sachen machen, jedoch muß man dafür viele Tests machen um Änderungen hier in ihrer Auswirkung abschätzen zu können
14. Im ersten Durchlauf --pass 1 im zweiten Durchlauf --pass 2
15. --stats x264_stats.log
16. Keine Ahnung was da ein besserer Vorschlag wäre als der Defaultwert => weglassen
17. einfach weglassen und so den Standardwerte nehmen
18&19. Keine Ahnung, da ich nicht weiß wie stark die Werte die Quantizerglättung wirklich beeinflußt => viel testen => weglassen
20. weglassen wenn man sie nicht braucht
Werde demnächst auch noch was zu den Bereichen Analysis, Video Usability Info und Input/Output schreiben wenn ich Zeit&nerven finde.
Würde mich über Meinungen, Verbesserungen usw. freuen. Vorallem im RateControlBereich kann ich nicht wirklich etwas empfehlen, da man bei den meisten Features erstmal einiges rumtesten müßte (2pass Encodes! 1pass reicht hier i.d.R. nicht!) und die Features sich durchaus untereinander beeinflussen.
Cu Selur