• Hallo miteinander,

    ich wollte euch auf meine neueste Entwicklung hinweisen: Einen crf Modus für XviD.
    Das Ganze habe ich in ELDER integriert, d.h. ihr könnt direkt loslegen. Input ist .avs, Output bisher .mp4. Ich werde aber avi noch nachrüsten, auch wenn mir persönlich der Sinn schleierhaft ist. Matroska kommt natürlich auch :)

    Zwei Modi bezüglich crf sind drin:
    1) xvid 2 pass, der die Bits genauso verteilt wie x264 im crf n Modus (n ist der Parameter)
    2) xvid 2pass mit Zielgröße, der die Bits so verteilt wie x264 mit qcomp 0.6

    Einen "nativen" crf Modus werde ich vielleicht später einbauen. Jetzt sollte erst einmal das grosse Testen losgehen :D

    Im englischen doom9 Forum ist mein Announce Thread: http://forum.doom9.org/showthread.php?t=100766

    Ach so: verteilt auf SMP oder mehreren Windows PCs kodieren kann ELDER auch.

    bis besser,
    T0B1A5

    Diese Signatur steht zum Verkauf

  • Oh man ... heute kapier ich zum ersten Mal: 708145 ~ TOBIAS; dabei bin ich schon jahrelang im doom9-Board! :ani_lol:
    __

    Leider ist es gar nicht so einfach (wie viele Naseweise behaupten, die dann einfach auf die Suche oder Google verweisen), im doom9-Forum brauchbare Details zum crf-Modus zu finden. Ich hatte ja schon Schwierigkeiten, überhaupt herauszufinden, dass die Abkürzung CRF wohl "Constant Rate Factor" bedeuten soll (gefunden im Beitrag "XviD --crf"); was hierbei aber nun exakt konstant gehalten werden soll, müsste mir wohl jemand erklären, der was davon versteht.

    Vielleicht rate ich ja schon mal gar nicht so falsch, wenn ich mir vorstelle, dass es um die Abweichung zwischen dem Original und dem wiederhergestellten Bild geht (was die Quantisierung selbstverständlich beeinflusst, aber eben inhaltsabhängig)?


    Selur, wenn du das hier liest: Vielleicht ist es ja sinnvoll, in deinem "man x264" auch die Langformen der in den Parametern verwendeten Abkürzungen zu erwähnen (z.B. bei "b-rdo" wird's interessant...).

  • Der Rate Factor ist ein Skalierungsfaktor, der eine mit Hilfe der 1Pass Daten ermittelte "optimale Bitverteilung" auf die gewünschte Endgröße/Bitrate herunterskaliert.

    Wenn man den Faktor vorgibt, kann eine 2Pass ähnliche Bitratenverteilung auch in einem Pass erreicht werden.

    b-rdo aktiviert routinen, die für B-Frames die Macroblock Intra Modi RD optimal wählen. D.h. jeder Macroblock bekommt diejenige "Unterblockaufteilung" (möglich sind viele modi von einem 16x16 Block bis zu 16 4x4 blöcken, wobei jeder Block einen eigenen Bewegungsvektor vekommt), der in einem gewissen Sinne qualitativ am besten ist.

    Es gibt eine Theorie, die besagt, dass das Universum sofort verschwinden und etwas noch Unerklärlicheres und Bizarres an seine Stelle treten wird, sobald jemand herausfindet, wofür es gut ist und warum es existiert.

    Es gibt eine andere Theorie, die besagt, dass das bereits geschehen ist.

  • Ich meinte für den zweiten Fall eher so etwas wie:

    RDO = Rate Distortion Optimization ~ Optimierung der Abweichung des Skalierungsfaktors: Es wird diejenige Blockaufteilung verwendet, bei der die Abweichung des Skalierungsfaktors am geringsten ist; dies erfordert das Durchprobieren aller Varianten, ist also zeitaufwändig - sichert aber beste Qualität für jeden einzelnen Block in diesem Bereich. (Einschätzung des zusätzlichen Zeitaufwandes und Qualitätsgewinns...)

  • LigH
    OT
    Vor dem Problem ,der deutschen Bezeichnungen stehe ich auch. Erklärungen,wie die oben von Kopernius und dann noch professionell sind rar. Ich glaube auch nicht,das es mehr als 20 Gleitzer hier gibt,die das wissen.Verstehe nicht wieso das keinen interessiert,oder nicht häufiger nachgefragt wird.

  • Vermutlich auch nicht verstehen wollen.

    Es gibt eine Theorie, die besagt, dass das Universum sofort verschwinden und etwas noch Unerklärlicheres und Bizarres an seine Stelle treten wird, sobald jemand herausfindet, wofür es gut ist und warum es existiert.

    Es gibt eine andere Theorie, die besagt, dass das bereits geschehen ist.

  • Selur
    Kann sicherlich sein. Nur was mich betrifft,(ich nehme das eben genannte Beispiel)

    Zitat

    RDO = Rate Distortion Optimization ~ Optimierung der Abweichung des Skalierungsfaktors


    hiermit habe ich doch viel mehr Ansatz für eine Recherche.
    Natürlich kann ich RDO evt abstrakt verstehen,nur wenn sich das summiert,ist die Frage ob ich dann abseits von One-Click-Tools überhaupt irgend was komplexer verstehe.

  • Tobias:

    wie hast du den CRF Modus für XviD realisiert? Muss man zwei Durchgänge machen, und er rechnet die Quantverteilung aus dem stats File anders als der XviD Standard Algorithmus oder reicht ein Durchgang?

    Falls zweiteres würde mich sehr interessieren, wie das im Detail funktioniert. Vielleicht könntest du ein paar Worte dazu sagen?

    Viele Grüße in die Landeshauptstadt

    Es gibt eine Theorie, die besagt, dass das Universum sofort verschwinden und etwas noch Unerklärlicheres und Bizarres an seine Stelle treten wird, sobald jemand herausfindet, wofür es gut ist und warum es existiert.

    Es gibt eine andere Theorie, die besagt, dass das bereits geschehen ist.

  • Ich gehe mal davon aus, dass der Rate Factor im Verlaufe der Quantisierung nebenbei ermittelt werden kann, wodurch bereits in einem Durchgang eine schnelle Anpassung der Quantisierung zur Korrektur und Stabilisierung des Rate Factors führen kann.

    Aber verständlicher wird es sicherlich, wenn man versteht, an welcher Stelle der Encodierung er eigentlich greift. Denn wenn sich der Rate Factor nicht direkt proportional mit dem Quantisierungsfaktor ändert, dann muss ja die Abhängigkeit vom Bildinhalt irgendwie anders ermittelt werden.

  • wie hast du den CRF Modus für XviD realisiert? Muss man zwei Durchgänge machen, und er rechnet die Quantverteilung aus dem stats File anders als der XviD Standard Algorithmus oder reicht ein Durchgang?

    Falls zweiteres würde mich sehr interessieren, wie das im Detail funktioniert. Vielleicht könntest du ein paar Worte dazu sagen?

    Ich habe mich für eine möglichst einfache Realisierung des Prototyps entschieden. Ich mache je einen xvid und x264 first pass und berechne daraus das neue stats file und die Bitratenverteilung.
    Ist also insgesamt 3 pass :D

    Das Ganze soll ja auch nur zeigen was ein crf Modus bei xvid bringen kann. Eine native 1pass Implementierung ist schon auch möglich aber wesentlich mehr Aufwand.
    Also einfach mal testen und sehen ob es genug bringt.

    Ausserdem habe ich noch einen qcomp Modus, das ist ein 2pass Modus der die Bits genauso verteilt wie x264 bei qcomp 0,6.

    Ich gehe mal davon aus, dass der Rate Factor im Verlaufe der Quantisierung nebenbei ermittelt werden kann, wodurch bereits in einem Durchgang eine schnelle Anpassung der Quantisierung zur Korrektur und Stabilisierung des Rate Factors führen kann.

    Aber verständlicher wird es sicherlich, wenn man versteht, an welcher Stelle der Encodierung er eigentlich greift. Denn wenn sich der Rate Factor nicht direkt proportional mit dem Quantisierungsfaktor ändert, dann muss ja die Abhängigkeit vom Bildinhalt irgendwie anders ermittelt werden.

    Direkt proportional ist da leider gar nix. Wäre zu einfach. :p
    Aber Du hast recht: Der Rate Factor kann nebenbei ermittelt werden und auch mit xvid ist ein 1pass crf Modus möglich.

    Ich spiele grad noch mit weiteren Verbesserungen, manche sind leider zu keinem existierenden Standard kompatibel.

    bis besser,
    T0B1A5

    Diese Signatur steht zum Verkauf

Jetzt mitmachen!

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