[Patch] Framerate modeswitching für xineliboutput

  • Wie in diesem Thread bereits zu lesen war, habe ich den modeswitching-Patch von durchflieger an die aktuelle xineliboutput Version angepasst und so verändert, dass nun die Framerate passend zum wiedergegebenen Material eingestellt wird.


    http://vdrportal.de/board/thread.php?threadid=98101


    Erst einmal vielen Dank an alle die mich unterstützt haben.


    Funktionsweise: Es wird geprüft welche Frameduration der gerade dargestellte Frame besitzt. Ist dieser Unterschiedlich zur letzten genutzten Framerate wird ein Delay von 20 Frames abgewartet. Nun wird per xrandr eine passende Modeline aus der xorg.conf geschaltet. Zur Zeit ist dies im Code fest auf eine Auflösung von 1920x1080 festgelegt, lässt sich aber dort anpassen falls z.B. eine 720p Auflösung gewünscht ist.


    Damit dies funktioniert muss folgendes erfüllt werden:
    - es wird ein neuer Parameter für vdr-sxfe eingefügt, um den Patch zu aktivieren muss vdr-sxfe mit dem Parameter --modeswitching gestartet werden
    - die xrandr Extension für xorg muss installiert sein
    - in der xorg.conf müssen entsprechende Modelines vorhanden sein, ich nutze zur Zeit diese

    Code
    ModeLine       "1920x1080@50" 148.500 1920 2448 2492 2640 1080 1084 1094 1124 +hsync +vsync
        ModeLine       "1920x1080@60" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
        ModeLine       "1920x1080@24" 74.250 1920 2558 2602 2750 1080 1084 1089 1125 +hsync +vsync
        ModeLine       "1920x1080@23.976" 74.175 1920 2558 2602 2750 1080 1084 1089 1125 +hsync +vsync



    Bei Verwendung von VDPAU muss zusatzlich dies erfüllt sein
    - xine-lib muss mit dem angehängten Patch versehen werden, da sonst immer nur eine Framerate von 0 gemeldet wird
    - in der xorg.conf muss in der Section Screen diese Zeile eingefügt werden

    Code
    Option         "DynamicTwinView" "False"


    - xine-lib-1.2 vom 17.07.10 (Changeset 8d864acff67d muss enthalten sein)
    - in der config_xineliboutput muss video.output.vdpau_honor_progressive auf 1 gesetzt werden


    Ich hoffe ich habe jetzt nichts vergessen ;)


    Ich möchte euch bitten Diskussionen zu dem Patch in diesem Thread durchzuführen, für alles was mit der Entwicklung des Patches zu tun hat bitte den Entwicklungsthread nutzen.

  • Nachdem ich nach längerer Zeit endlich mal wieder dazu gekommen bin meinen VDR zu updaten, habe ich auch gleich mal getestet ob der Bug im NVidia-Treiber noch vorhanden ist. Dieser wurde anscheinend mittlerweile behoben und es funktioniert nun auch ohne aktiviertes Composite.


    Im Anhang ein neuer Patch für die aktuelle xineliboutput Version. Der Patch für die xine-lib ist nicht mehr nötig, die Änderungen sind dort mittlerweile eingeflossen.

Jetzt mitmachen!

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