Unklarheiten bezüglich neueren x264CLI Optionen

  • d.h. Wenn die Daten über ein schon multithreaded eingelesen werden oder man ein sehr CPU lastiges avisynth script hat sollte man --thread-input nicht nutzen. Hmm, das könnte ich oben noch anmerken. Allerdings muß ich sagen, dass ich bis dato persönlich noch keinen Fall konstruieren konnte wo das Feature bei thread = 1 (und single cpu) geholfen hätte.

    Cu Selur

  • Zitat von nexustheoriginal

    r478: * configure: support for 64 bits MIPS.

    Was ist ein 64 bits MIPS? :) (ist bestimmt blöd die Frage, aber ich weis es wirklich nicht :( )

    cu

    Joe
    __________________
    Freedom ist just another word for nothing left to loose.

  • Zitat

    Bringt es etwas das Feature zu nutzen?


    Es sollte etwas mehr Details erhalten, verringert aber auch die Kompression. In hohen Bitraten würde ich es einschalten, in niedrigen und bei Cartoon/low-detail Animes aus. Ich habe aber noch keine Tests gemacht um meine Behauptung zu stützen.

  • Kann wer etwas mehr zu "--no-dct-decimate" sagen als im Changelog steht? Bringt es etwas das Feature zu nutzen?

    Es sollte etwas mehr Details erhalten, verringert aber auch die Kompression. In hohen Bitraten würde ich es einschalten, in niedrigen und bei Cartoon/low-detail Animes aus. Ich habe aber noch keine Tests gemacht um meine Behauptung zu stützen.

    Hat jemand dazu schon Test gemacht? Ein kleiner Testclip mit trellis 1 wurde mit --no-dct-decimate fast 6% größer.

    Gruß

    akapuma

    Wer weiß, wovon er redet, kann es sich leisten, sich verständlich auszudrücken.
    Besucht auch meine Homepage: http://akapuma.info

  • Das hat Kopernikus besser erklärt als ich zunächst verstanden hatte.

    Dann zitiere ich mal hieraus, in der Annahme, daß ich hier im richtigen Thread bin:

    DCT Decimation verwirft Frequenzkomponenten, die nach der Quantisierung nur sehr kleine Amplituden haben. Das erhöht die Effizienz der nachfolgenden verlustfreien Kompression in einen Bitstream mit RLE und Huffman.

    Trellis geht an das selbe Problem etwas professioneller (aber halt auch alangsamer) ran und findet eine nach RD Gesichtspunkten optimale Quantisierung.

    Und noch ein Zitat aus Selurs "man":

    Zitat

    Standardmäßig ist bei B-Frames diese Dezimierung immer deaktiviert und bei Trellis immer an

    Wenn Trellis "das selbe Problem etwas professioneller angeht", warum ist die Dezimierung dann bei Trellis immer an? Nach der Erklärung von Kopernikus (so, wie ich sie verstanden habe), müßten sich Trellis und DCT Decimation doch "beißen".

    Gruß

    akapuma

    Wer weiß, wovon er redet, kann es sich leisten, sich verständlich auszudrücken.
    Besucht auch meine Homepage: http://akapuma.info

  • Hallo,

    ich habe mal folgendes probiert:

    kein trellis, kein --no-dct-decimate => 4168kB
    trellis = 1, mit --no-dct-decimate => 4786kB

    Vom Platz her wäre die DCT-Dezimierung ja Trellis weit überlegen (bei meinem kurzen Clip rund 15%). Bringt Trellis qualitativ wirklich so viel? Man könnte es ja auch weglassen und mit einem kleineren --crf-Wert die gleiche Dateigröße erreichen, vielleicht wäre das besser.

    Code
    x264.exe --crf 25 -I 300 -i 120 -r 6 --mixed-refs --no-fast-pskip -b 4 --b-pyramid --b-rdo --bime -w -f 1,1 -m 7 -A all -8 -- qpstep 8 --aq-strength 0.5 --direct auto --b-bias 30 --thread-input --progress --no-psnr --no-ssim -o "film.mkv" film.AVS

    Gruß

    akapuma

    Edit: hier gefunden:

    Das war's dann, oder?

    Gruß

    akapuma


    Edit2: Zitat von hier:

    Zitat

    it's (trellis) unpredictability in Constant Quantizer mode

    unpredictability=unberechenbar

    So sehe ich das auch: "Entweder DCT Decimation oder Trellis RD" würde ich auch so herauslesen.

    Und nochmal Zitat vom Link hiervor:

    Zitat

    Note: it is a good idea to turn this (trellis) ON if you decide to uncheck "DCT Decimation."

    However, if you decide to use Trellis, you might consider turning this (DCT decimation) off in order to best allow trellis to be the determining factor in what information gets dropped/skipped without interference from other options.

    Fazit:
    ==> kein Trellis bei konstantem Quantizer (und ich denke auch CRF)
    ==> beim 2-Pass-Verfahren Trellis oder DCT-Dezimierung, also trellis immer in Verbindung mit --no-dct-decimate benutzen

    Wer weiß, wovon er redet, kann es sich leisten, sich verständlich auszudrücken.
    Besucht auch meine Homepage: http://akapuma.info

  • unpredictability=unvorhersehbar ;)

    => kommende Zusatz für's man x264:

    Zitat

    [FONT=Times New Roman, serif][FONT=Times New Roman, serif]Trellis sollte deaktiviert werden wenn man crf oder einen single pass constant quantizer Encode durchführt, da seine Arbeitsweise hier nicth vorhersehbar ist.[/FONT][/FONT]

    schon vorhandene Anmerkung im man x264:

    Zitat

    [FONT=Times New Roman, serif]Sollte normalerweise mit --no-dct-decimate aufgerufen werden, falls man trellis verwendet.[/FONT]

    ----

    Zitat

    Das war's dann, oder?


    Falls Du die Zeit hast wäre es cool wenn Du noch nen PSNR/SSIM Vergleich bei gleicher Größe machen könntest. Soweit ich mich entsinne, gab es sowas mal im englischen Doom9 Forum, aber ich finde es nicht mehr. ;)

    Cu Selur

  • Hallo,

    wenn ich DeathTheSheep richtig intepretiere, soll man beim 2-Pass-Verfahren, wenn überhaupt, nur trellis oder die DCT-Dezimierung oder Fast-P-Skip verwenden, also:

    -trellis --no-fast-pskip --no-dct-decimate (nur trellis)
    --no-dct-decimate (nur fast P-Skip)
    --no-fast-pskip (nur DCT-Dezimierung)

    Gruß

    akapuma

    Edit: Vielleicht verstehe ich das auch falsch.

    Wer weiß, wovon er redet, kann es sich leisten, sich verständlich auszudrücken.
    Besucht auch meine Homepage: http://akapuma.info

  • Na, es macht schon Sinn, das so zu sehen: Alle drei Funktionen versuchen, die Größe von P-Frames zu reduzieren - aber jeweils auf eine andere Art der Reduktion, mit einem anderen Ansatz. Wenn man mehrere dieser Techniken kombiniert, dann kann das verständlicherweise zu Nebenwirkungen führen. Wahrscheinlich zum merklichen Verlust von Informationen und nachhaltiger Verschlechterung der Qualität. Das kennen wir ja schon aus der wiederholten Encodierung bereits encodierter Videos.

    GUI-Autoren sind also sicher gut beraten, hier eine Auswahl per Combobox oder Radiogruppe anzubieten; vielleicht in etwa "P-Frame-Reduktion: Schnell (Fast P-Skip) | Einfach (DCT Decim.) | Gut (Trellis RD) { Final | Always }".

  • Was passiert denn wenn man --no-dct-decimate und --no-fast-pskip benutzt?
    Bis dato halte ich das auch für einen gangbaren Weg.

    --no-past-pskip deaktiviert ja nur eine frühzeitigen Suchabbruch bei P-Frames soweit ich mich entsinne, dass sollte eigentlich separat zu --no-dct-decimate und trellis zu betrachten sein.

    So wie ich es verstehe gibt es eine Art Schleife in der DCT-Dezimierung oder Trellis läuft und deren Berechnung noch eine zusätzliche Abbruchbedingung (fast p-skip) hat.

    Cu Selur

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!