[patches] xine-lib-1.2+xineliboutput+xine-plugin verbesserter vdr support

  • Quoted from "Maniac"
    Die Option --hud=opengl nutzt, im Gegensatz zur Option --opengl, ein Window(kein opengl) zu darstellen solange kein OSD sichtbar ist. Erst wenn man ein OSD öffnet, wird das Bild in eine Pixmap umgeleitet. Dafür wird an xine ein drawable_changed gesendet und xine wechselt dann auf die Pixmap.
    Leider mag das aber vdpau so noch nicht gerne.


    Grade noch mal ausprobiert. Funktioniert hier seit 30 minuten auch relativ problemlos (kein segfault mehr wie bei meinem letzten Versuch vor einigen Tagen). Speziell bei den ÖR HD-Sendern kommt es beim Menüaufruf allerdings manchmal zu 1-2 Sekunden Bildstörung.

    Da es anscheinend Senderabhängig ist und vermutlich mit der Datenrate zusammenhängt, (bei dir die ÖR die ja gute Datenraten haben, ich hab bis jetzt immer auf einem HD-Sender getestet), kam mir die Vermutung das dies eventuell damit zusammenhängt das irgendwas nicht Threadsafe ist.
    Dabei bin ich dann auch gleich auf die Zeile 2130 im xine_sxfe_frontend.c gestossen. Dort wird XINE_VISUAL_TYPE_X11 benutzt welches wohl nicht Threadsafe ist, XINE_VISUAL_TYPE_XCB soll Threadsafe sein.
    Da ich nicht weiß wann und ob ich heute zum testen komme, bitte mal jemand testen die entsprechende Zeile so abzuändern:

    Code
    this->x.xine_visual_type = XINE_VISUAL_TYPE_XCB;
  • Mit diesem patch wird man die Meldungen
    video_out: throwing away image with pts xxxxxxx because it's too old (diff : yyyyy)
    die man mit xine --verbose=2 beim Abspielen von HD Aufnahmen mit vdpau sieht los.
    Der patch sorgt dafür, dass der Cpu Peak viel kürzer und kleiner wird. Dies war vor allem auf langsamen Systemen ein Problem, insbesondere bei höherer Last. Auf schnellen Systemen ist es vermutlich nicht besonders störend aufgefallen.
    Die ganze Geschichte mit allen Details steht hier.


    Ich bitte alle Tester um Feedback.

  • Jetzt wollte ich gerade mal testen obs mit XINE_VISUAL_TYPE_XCB einen Unterschied macht, also erstmal aktuelle xine-lib neu gebaut (einmal mit df-Patch einmal ohne) und xineliboutput (mit Bugfix für opengl) neugebaut.


    Allerdings funktioniert es schon ohne Änderung des Visual Type nicht mehr mit --hud=opengl. Wenn ich das OSD öffnen will hält einfach das Bild an und kurz danach kommt fifo buffer full. Es hilft dann nur noch ein Neustart von vdr-sxfe.


    Edit: Das hängt anscheind mit dem Wert bei video.output.vdpau_display_queue_length zusammen.
    2 = das fifo buffer full verhalten
    3 = meistens kein OSD aber auch keine Meldungen
    8 = preemption callback

  • Ja, ist im aktuellen df-Patch mit drin. Ich will jetzt mal versuchen den Stand zu finden, bei dem es immer gewechselt hat von Window auf Pixmap, aber halt der preemption callback aufgetreten ist.
    Ich glaube das war ca. zu der Zeit bevor der OSD-Patch wieder rausgenommen wurde.

  • im moment läuft das xine-plugin bombenfest mit aktueller libxine.
    leider bietet das shq eine merkwürdige sache ... das osd wird der videogrösse angepasst ;(
    das sieht recht merkwürdig aus.


    vdr-sxfe (git aktuell) getestet geht hier leider nichts mehr, läuft das bei euch ??
    ich bekomm damit nur das :


    Code
    Apr 12 21:08:50 zotac-natty vdr: [3250] [xine..put] cXinelibServer::Play Buffer overflow (TCP/PIPE)
    Apr 12 21:08:55 zotac-natty vdr: last message repeated 1000 times
    Apr 12 21:08:55 zotac-natty vdr: [3250] [xine..put] cXinelibServer: Too many TCP buffer overflows, dropping client
    Apr 12 21:08:55 zotac-natty vdr: [3250] [xine..put] cXinelibServer::Play Write/Queue error (TCP/PIPE)
    Apr 12 21:08:55 zotac-natty vdr: [3250] [xine..put] Closing connection 0


    die config ist dabei die "gleiche" wie beim xine-plugin bzgl. puffer

  • eine merkwürdige sache ... das osd wird der videogrösse angepasst


    siehe hier...


    Gruß
    iNOB

  • hallo,


    durchflieger: sorry für's "hijacking" - dachte mir aber, daß es in diesen thread am besten passt (geht eh gleich wieder unter :) )


    crisalide (=xine developer) hat einen neuen verbesserten vdpau h264 decoder für die aktuelle xine-lib-1.2 veröffentlicht. er liegt als patch unter: http://hftom.homelinux.org/tmp/alter_vdpau-2.diff


    hier geht's zum originalen "announcement": http://www.nvnews.net/vbulleti…php?p=2417563#post2417563


    gruß, ciax:


    btw: neuer "stable" (official prerelease) 270.41.03 nvidia-treiber wurde gestern auch veröffentlicht (allerdings mit wenig neuem)

  • leider bietet das shq eine merkwürdige sache ... das osd wird der videogrösse angepasst ;(


    Der Modus heißt ja auch "Einpassen", means scaling, hier wählbar in verschiedenen Qualitätsstufen, wobei SHQ das "Beste" sein soll.


    Soll aber jeder selber urteilen, ob das S(uper)H(igh)Q(uality) ist, wenn er das Einpassen des OSDs auf einem der Musiksender gesehen hat, vor allem wenn auch noch der Autocrop zugeschlagen hat ... :(


    SHQ ist für mich nur der Overlay Modus, der mit den letzten Version(en) leider nicht mehr funktioniert, warum auch immer ...


    Regards
    fnu

    HowTo: APT pinning

    Einmal editiert, zuletzt von fnu ()

  • ja fnu, ich hab endlich kapiert was du meinst :D


    Meinst Du vielleicht eher schmerzvoll selbst erfahren ... ?


    für was gibt es das einpassen überhaupt ?


    Evtl. Altlast? Aber wenn man es anders kennt, eben SHQ@Overlay(X11), ist das noch nicht mal schade, das geht irgendwie gar nicht und ärgert mich mal wieder, das ich nicht das Talent habe hier was zu "bewirken" ...

    HowTo: APT pinning

  • Hallo,


    auf vdr-developer.org habe ich für die xine-lib-1.2 einen neuen Branch 'df-osd-handling' commited.
    Dieser Branch enthält den überarbeiteten OSD-Handling Patch für den vdpau Ausgabetreiber.
    Bei mit funktioniert damit die X11-Overlayausgabe im vdr-xine-plugin wieder vernüftig (allerdings nur getestet gegen vdr 1.7.16).


    Weiterhin hoffe ich nun, dass der Patch auf "schwacher" vdpau Hardware jetzt nicht mehr schlechtere Ergebnisse liefert. Dass
    kann ich allerdings nicht testen.


    Interresant wäre auch ob der Patch die erwartete Darstellung bei den verschiedenen OSD Betriebsmodis der xine und xineliboutput plugins liefert,
    z.B. im Vergleich zum xv Ausgabetreiber.
    Das alles zu testen ist mir im augenblick einfach zu aufwendig und ich hoffe auf eure Hilfe.


    Hier die Beschreibung zum Patch:


    Gruss
    durchflieger


  • Hallo,


    ich habe mal einen neuen Thread dazu angelegt.
    klick mich

    Gruss Björn.


    SilverGreen-Skin

  • Nabend,


    die grosse Frage ist jetzt, wie man den neuen Vdpau-h264-Decoder mit den df-Patches verheiratet?


    Gibt es da große Differenzen? => dann wäre das natürlich wieder eine große Patchorgie, wenn es überhaupt geht?


    Eventuell kann ja Durchflieger dass mal Zusammenführen/Anschauen, gerne auch in einem seperaten Branch.


    Gruß
    Wolfgang

  • Mann das geht ja schneller als man schauen kann!


    Vielen Dank!
    iNOB

Jetzt mitmachen!

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