MeGUI [2015] -- x264 - bester Encoder, beste Videoqualität auf Youtube ;-)

  • Bis jetzt hatte ich in den Einstellungen des [lexicon]x264[/lexicon] scratchpad nichts verändert und es auf den Standardwerten gelassen. Jetzt hab ich doch mal etwas rumgelesen und möchte euch jetzt mal folgendes Script zeigen, zu dem ich noch eine Frage habe:


    program --preset slow --crf 18.0 --keyint infinite --min-keyint 1 --partitions all --aq-strength 1.25 --output "output" "input"


    Ohne jetzt wirklich zu wissen, was die einzelnen Einstellungen bewirken, hab ich mir das so zusammengereimt, würde aber gerne wissen, ob --partitions all überhaupt Sinn macht oder ob das da nichts verloren hat. Das wäre aus einem anderen Script von Sagaras zusätzlich eingefügt.


    Was ist eigentlich mit --bframes 5? Ist das mit --keyint infinite abgedeckt oder kann das noch mit rein?

  • Zitat

    p4x4 is generally not very useful and has an extremely high ratio of speed cost to resulting quality gain.


    Bei viel Bewegung sind kleine Partitionen im Makroblock nützlich. [lexicon]x264[/lexicon] variiert aber selber die Partitionsgröße je nach Bildinhalt.
    Würde es einfach auf default belassen^^


    Je höher aq-strength, desto mehr Details bleiben erhalten. Bei dunkleren Stellen ist es sogar ganz sinnvoll den Wert zu erhöhen, da sich der [lexicon]CRF[/lexicon] besser an das Material anpassen kann und diese dunklen Bereiche nen tick besser aussehen. Dadurch wird die Datei halt größer.


    b-frames auf 5 würde wie folgt aussehen: IBBBBBPBBBBBPBBBBBP...I
    Grundsätzlich gilt, je mehr b-frames, desto besser ist dann die Kompression beim Encode für eine bestimmte Qualität -> kleine Dateigröße
    Maximum ist soweit ich weiß 16, ab 6 oder 7 ists unbedeutend für die Dateigröße.


    Wenn der Intervall zwischen den keyframes auf 0 bzw. infinite ist, heißt das nur, dass nur eben diese IDR-frames decodiert werden können. Man kann also nur an diesen Stellen im Nachhinein schneiden/spulen.

  • b-frames auf 5 würde wie folgt aussehen: IBBBBBPBBBBBPBBBBBP...I


    Nein.


    Der [lexicon]Encoder[/lexicon] entscheidet das nach wie vor selber. Du gibst mit dem Parameter nur ein maximum vor.


    Zitat

    Je höher aq-strength, desto mehr Details bleiben erhalten. Bei dunkleren Stellen ist es sogar ganz sinnvoll den Wert zu erhöhen, da sich der [lexicon]CRF[/lexicon] besser an das Material anpassen kann und diese dunklen Bereiche nen tick besser aussehen. Dadurch wird die Datei halt größer.


    Das beeinflusst die Adaptive Quantizerstärke.


    Dunklere Bereiche sind Bereiche wo der Quantizer auf weniger Komplexität stößt, [lexicon]CRF[/lexicon] nutzt hier niedrigere Quantizerwerte, um der geforderten Rate Factor Qualität treu zu bleiben. Bei komplexen Stellen erkennt der Quantizer die Komplexität und komprimiert hier wenig, da würde [lexicon]CRF[/lexicon] dann höhere Quantizerwerte benutzen um Speicher zu sparen. AQ Strength beeinflusst, wie stark [lexicon]x264[/lexicon] dabei vorgeht. Bei höherer Stärke tut [lexicon]x264[/lexicon] also Dunkelheit entsprechend noch kleinere Faktoren geben, aber komplexität auch größere.
    Hohe [lexicon]CRF[/lexicon] Werte sollte man daher eventuell nicht mit 1,25 laufen lassen, denn die Komplexitätstellen beginnen dann früher zu leiden. [lexicon]CRF[/lexicon] 18 kann mit 1,25 problemlos laufen und verbessert dunkle Stellen.


    5 statt 3 bframes verlängern den encode. Klingt seltsam, wenns nur ein maximum angibt, ist aber mit den adaptiven b-frames begründet. Würde man adaptive b-frames ausschalten, würde die max b-frame einstellung in der tat nur das maximum definieren und 16 somit nicht langsamer als 3 sein. Mit adaptiven B-frames aktiviert hat es aber Einfluss auf die geschwindigkeit. Werte zwischen 3 und 5 sind beim meisten Material sinnvoll, Animes profitieren auch noch von 8.


    Zitat

    Wenn der Intervall zwischen den keyframes auf 0 bzw. infinite ist, heißt das nur, dass nur eben diese IDR-frames decodiert werden können. Man kann also nur an diesen Stellen im Nachhinein schneiden/spulen.


    Dem [lexicon]Encoder[/lexicon] wird keine maximale [lexicon]GOP[/lexicon] Länge mehr aufgezwungen, längere [lexicon]GOP[/lexicon] Längen (große Keyframeabstände) bedeutet aber das bei einer riesigen [lexicon]GOP[/lexicon] Länge auch eine riesige Menge an b und p frames zusammengerechnet werden müssen wenn du in deinem Player woanders hinspulst. Das Spulen wird also bei langen [lexicon]GOP[/lexicon] Längen träger. Gesplittet werden kann generell nur an I-Frames. Egal ob mit kurzer oder langer [lexicon]GOP[/lexicon] Länge.

  • De-M-oN Du sagtest doch mal, dass sich [lexicon]CRF[/lexicon] nicht wirklich auswirkt.. Pustekuchen, jedenfalls bei mir. Der Unterschied zwischen 21, 20 und 18 sind bei mir sehr groß, nich nur von der Encodingdauer. Und ein wirklicher Unterschied zwischen 19 und 20,5 ist bei mir nur in der Dauer, nicht aber in der Qualität vorhanden. Aber gut, [lexicon]CRF[/lexicon] muss jeder selbst entscheiden. AQ 1.25 hat besonders bei dunklen Spielen wie NFS was gebracht, gegen [lexicon]GOP[/lexicon] bin ich ja schon lange, da für mich Spulen ein Muss ist und selbst mit den schnellsten Decodern dauert das bei mir an die 25 Sekunden, und für die paar 50MB muss das nich sein.. Dann lieber Größe durch Spline100 und BB einsparen.

  • Bei mir nicht. Ihr spult bestimmt während der Wiedergabe, dann braucht ihr euch nicht wundern. Bei infinite gop länge pausieren und dann zur neuen Stelle spulen. Sonst isses klar das es nix wird.


    Zitat

    und für die paar 50MB muss das nich sein..


    Das sind doch nicht nur 50 MB.


    Das ist mitunter 'ne ganze Menge. Je nach Material.^^

  • Ja, bei Desktop encodier ich auch mit [lexicon]GOP[/lexicon] 0, aber bei (meinen) Spielen wirkt sich das nicht aus, wie alle von der Wunderwaffe behaupten.. Und nein, ich pausiere. Mit deinem [lexicon]ffdshow[/lexicon] und Enhanced Video Renderer (custom)..

  • Es wirkt sich immer dann ganz besonders aus, wenn du unkomplizierte Stellen hast. Darunter zb ein Menü etc. Stillere Bilder.


    Need For Speed ist natürlich jetzt nicht so optimale Grundbasis dafür :D


    Aber das du da so lange am Spulen hängst ist schon krass. Haste 'nen Desktopvideo versucht zu spulen? Wenn du ernsthaft 25sek spulzeit hast, haste entweder in eine enorm lange [lexicon]GOP[/lexicon] geklickt, oder deine HDD/CPU hängen da arg hinterher, aber so miserabel ist deine [lexicon]CPU[/lexicon] ja eig. nicht..

  • Wieso Spline100?
    In der Theorie ist es ja eigentlich so, dass je mehr sample points verwenden werden, desto schärfer wird das Ausgangsmaterial. Für YT natürlich dann nicht so toll wie z.B Spline16.
    *Hier* z.B widerspricht sichs aber. Da ist Spline144 gar unschärfer als Spline100, deswegen verstehe ich grade die Logik nicht ganz xD

  • Spline100 weils weniger zu Ringing neigt und es auf YouTube kein Pixelmatsch wird, wie bei Lanczos4. Hier zahlt sich Unschärfe aus. Dazu noch BB und ein natureller [lexicon]Blur[/lexicon] bspw. von Crysis und es ist perfekt :D

  • Die sind sich recht ähnlich, aber 100 behält mehr Detail bei.


    Ich finde es allerdings schade, das Spline100 nicht mit ResampleHQ verwendbar ist.


    ResampleHQ ist halt ein Resizer der in korrekter Form den Gamma umrechnet.
    http://svn.int64.org/viewvc/int64/resamplehq/doc/index.html


    Ich weiß jetzt nicht in wie fern die DLL von Wilbert da mitzieht.


    Achja: Sazoga wird es sicherlich freuen das der neue [lexicon]SSM[/lexicon] Spline100 und Spline144 drin haben wird ;D

  • Ich habe gerade testweise recht komplexes Material von 1080p auf 1800p vergrößert einmal mit spline16resize und einmal mit spline100resize.


    Die 16er Datei ist in meinem Fall 10% größer als die 100er.
    Auf den ersten Blick sieht beides gut aus. Ich muss nochmal einzelne Frames miteinander vergleichen.

  • Mhm das geht ja noch.. Ich würde ja zu Spline16 wechseln, wenn ich wüsste, was der Vorteil von ResampleHQ ist, den ich bei 100 nicht habe :D

  • Hat doch De-M-oN oben verlinkt^^
    Schau dir einfach die Beschreibung und das Besipiel an. Da sieht man sehr deutlich, dass die AviSynth-Filter das falsch verarbeiten (viel dunkler).

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!