Neues XBMC für yaVDR 0.4 in testing

  • Das Exit-Problem von XBMC scheint was mit der OpenGL-Beschleunigung zu tun zu haben. Nehme ich den VDR-User aus der Gruppe "video" aus, dann ist XBMC zwar unbenutzbar langsam, aber beendet sich zumindest. Btw, ich verwendet YaVDR mit ner Intel-Grafikkarte, das könnte der Grund sein, warum offenbar nur wenige das Problem nachvollziehen können.

  • Folgender Workaround beendet XBMC bei mir zuverlässig, wenn auch mit einer kleinen Einschränkung:


    1. Die Datei /usr/local/bin/kill-xbmc.sh mit folgendem Inhalt anlegen:

    Bash
    #!/bin/sh
    
    
    (sleep 5 && (
        sed -i -s 's~<screenmode>WINDOW</screenmode>~<screenmode>DESKTOP</screenmode>~' ~/.xbmc/userdata/guisettings.xml 
        kill -9 $PPID
    )) &


    2. Die Datei ausführbar machen:

    Code
    $ sudo chmod 0755 /usr/local/bin/kill-xbmc.sh


    3. Das Confluence-Theme modifizieren, damit dieses Script beim Beenden aufgerufen wird. Dazu die Datei /usr/share/xbmc/addons/skin.confluence/720p/DialogButtonMenu.xml als root bzw. mit sudo in einem Editor öffnen und die folgende Stelle suchen:



    Vor der Zeile "<onclick>XBMC.Quit()</onclick>" wird nun die neue Zeile "<onclick>System.Exec("/usr/local/bin/kill-xbmc.sh")</onclick>" eingefügt, so dass der entsprechende Abschnitt nun so aussieht:



    Erklärung und Einschränkungen


    Das Script legt sich 5 Sekunden lang schlafen. Anschließend sendet es dem Elternprozess (=xbmc.bin) ein kill-Signal.


    Bei mir gab es die Nebenwirkung, dass XBMC sich selbst auf den Fenstermodus umgeschaltet hat. Ob das ein Problem in diesem Verfahren ist, oder ob das vielleicht sogar mit dem eigentlichen Absturz zusammenhängt - keine Ahnung. Die "sed"-Anweisung im Script sorgt deshalb dafür, dass der Vollbildmodus wieder in der guisettings.xml eingetragen wird.


    Wenn ein XBMC-Update kommt, dann wird die veränderte Datei überschrieben werden. Man muss dann also die neue onclick-Anweisung wieder einfügen. Am schönsten wäre es, ein AddOn zu haben, dass auf das OnQuit-Event horcht und dann das kill einleitet, aber ich habe in der Plugin-Dokumentation keine Erklärung gefunden, wie man sich in das Eventsystem von XBMC einhängen kann.

  • Hi,


    vielen Dank.

    3. Das Confluence-Theme modifizieren, damit dieses Script beim Beenden aufgerufen wird. Dazu die Datei /usr/share/xbmc/addons/skin.confluence/720p/DialogButtonMenu.xml

    Ich habe die Änderung vorgenommen. Leider ohne Erfolg. Wenn ich "Dein" Script auf der Shell dirkt aufrufe (als root) kommt:


    Code
    sed: kann /home/hergorn/.xbmc/userdata/guisettings.xml nicht lesen: Datei oder Verzeichnis nicht gefunden


    Danke



    Hergorn

    VDR: ASROCK 330 Pro (ION), 2x Sundtek USB-DVB-C , yavdr 4 stable aktuell, XBMC Paket aus "unstable-xbmc" PPA, ÖR und Private bei KD laufen, \video per NFS vom QNAP eingebunden

  • Ich habe die Änderung vorgenommen. Leider ohne Erfolg. Wenn ich "Dein" Script auf der Shell dirkt aufrufe (als root) kommt:


    Das ist klar, XBMC läuft unter yaVDR ja auch unter dem User vdr - wenn deine Umgebungsvariablen nicht passen klappt es nicht.


    Da unter yaVDR das der einzige User ist, der XBMC nutzt, würde ich den Pfad fest setzen und statt

    Code
    ~/.xbmc/userdata/guisettings.xml


    das nehmen:

    Code
    /var/lib/vdr/.xbmc/userdata/guisettings.xml


    Außerdem muss man natürlich den entsprechenden Skin nutzen, sonst wird das Skript nicht ausgeführt...

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hallo
    erstmal ein thanks hier an die Entwickler - tolles System und tolle Leuts :] Bin noch ziemlich neu in Ubuntu/yaVDR aber es läuft so gut das ich meine 3Rechner komplett auf Linux umgestellt habe.
    Vielleicht hab ich hier einen Zufalls - Ansatz zur Lösung des Exit-Problems von XBMC.
    Das schlechte - auch bei mir bleibt der Bildschirm schwarz nach verlassen des XBMC!
    Das gute - wenn ich das Youtube Plugin Nutze, ein Video damit schaue und dann danach XBMC beende - Dann beendet sich XBMC einwandfrei und der VDR startet bzw TV-Bild is da :]
    zur Info noch, nutze das xbmc ohne vdr Funktion
    Gruss Volker

    Beste Grüsse vom Foxi
    _________________________________________________________________________________
    Server: IntelDH77EB G630T be quiet! E9 400W Tevii S480 DVB-S2 / Ubuntu 12.04server
    Client1: Asusn M2NVM-HDMI 4GbRam Athlon64x2 4400+ Geforce GT520 / yavdr05
    __________________________________________________________________________________

  • Ich hatte grade eine Unterhaltung im IRC, es scheint ein Problem des 295er nvidia Treiber zu sein, wenn jemand die Möglichkeit hat das zu testen mit einer älteren nvidia-current Version und das bestätigen könnte, wäre es super. Auf Precise komme ich mit der Version nicht einfach runter :)

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

  • Hab noch was gefunden:


    link


    Habs mal hier hinzugepackt


    .............................................................................

    Bis dann
    mb


  • Da unter yaVDR das der einzige User ist, der XBMC nutzt, würde ich den Pfad fest setzen und statt

    Code
    ~/.xbmc/userdata/guisettings.xml


    das nehmen:

    Code
    /var/lib/vdr/.xbmc/userdata/guisettings.xml


    Dann muss jedoch auch die Zeile "kill -9 $PPID" durch "killall -9 xbmc.bin" ersetzt werden, da das Script sonst die eigene Loginshell als Elternprozess töten dürfte.

  • Ich hatte grade eine Unterhaltung im IRC, es scheint ein Problem des 295er nvidia Treiber zu sein, wenn jemand die Möglichkeit hat das zu testen mit einer älteren nvidia-current Version und das bestätigen könnte, wäre es super. Auf Precise komme ich mit der Version nicht einfach runter :)


    Hi, ein


    Code
    apt-cache showpkg nvidia-current


    gibt mir diese Ausgabe:



    Das sollte für die meisten user der Standardtreiber nach der installation der version 0.4.0 sein.


    Überprüft mit:


    Code
    nvidia-settings -g | grep "OpenGL version"


    gibt Ausgabe:


    Code
    OpenGL version string: 3.3.0 NVIDIA 270.41.06


    Der Fehler beim beenden von XBMC (schwarzer Bildschirm mit Mauszeiger) tritt bei mir trotzdem auf. Ein killall xbmc - wie hier schon mehrfach beschrieben - startet die xine Ausgabe des VDR auf dem Bildschirm wieder.


    Habe die 3 stable repos (vdr, xbmc, yavdr) plus das testing-xbmc repo, wie im ersten post hier beschrieben, hinzugefügt.


    PS: Außer dem Beenden muss ich aber sagen, dass diese XBMC version einfach spitze ist. Kein Absturz, alle plugins, die ich brauche funktionieren, auch die Umschaltung des TVs bei 1080p_24 Wiedergabe usw.


    Gruß,
    OsZ

    Hardware: JJ NU-0528i-B-CR : POV ION 330 : 2GB RAM : 1.5TB WD : TeVii S470 : OneForAll-7960
    Software: yaVDR 0.4 stable

  • Vielen Dank für das Feedback, ich werde da schauen ob ich heute abend nochmal jemanden erwische.


    Nach der Diskussion gestern abend hört sich das eigentlich nach einem Deadlock an -
    inwieweit der Treiber da reinspielt oder die Grafikkarte nur die Ressource ist an der er sich aufhängt kann ich nicht beurteilen. Da fehlt mir das abschliessende verständnis in der Systemprogrammierung.


    Die Aussage war "nvidia broke popen in their latest drivers"

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

  • Das nvidia-Problem betrifft mich sicher nicht, ich hab ne Intel-Grafikkarte (ich weiß, von yaVDR nicht offiziell supported, aber möglich). Dennoch scheint es mit dem GLX zu tun zu haben, denn wenn ich dem VDR-Benutzer die "video"-Berechtigung wegnehme (und damit die Möglichkeit, per OpenGL darzustellen) beendet sich XBMC normal.

  • Das nvidia-Problem betrifft mich sicher nicht, ich hab ne Intel-Grafikkarte (ich weiß, von yaVDR nicht offiziell supported, aber möglich). Dennoch scheint es mit dem GLX zu tun zu haben, denn wenn ich dem VDR-Benutzer die "video"-Berechtigung wegnehme (und damit die Möglichkeit, per OpenGL darzustellen) beendet sich XBMC normal.


    Dann ist es also eher X als Nvidia, vielleicht wieder die xcb? Wie hieß nochmal der LOCK define?


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • So war der Schluss gestern das es die Darstellung von Video und gleichzeitiges OpenGL mit die Ursache sind - die Schlussfolgerung das nvidia etwas kaputtgemacht hat scheint mir langsam unplausibel, scheint mir eher als wenn XBMC hier etwas nachbessern müsste.

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

  • hi


    jetzt muss ich doch auch mal was dazu schreiben .


    Systeme 1x Intel 1x Nvidia
    bei beiten beentet sich das xbmc aus den yavdr repositorys nicht sauber .
    also habe ich eigene Versuche gestartet (xbmc selbst bauen )
    1x opdenkamp-pvr
    http://www.bveml.net/de/conten…xvdr-inkl-vdr-1720-ubuntu
    das Ergebnis xbmc beendet sich sauber keinen einzigen hänger egal wie man es beendet
    2x eden-pvr
    das Ergebnis xbmc beendet sich nicht sauber ständig hänger und Mann muss xbmc killen um wider in den vdr zu kommen .


    also wo wird dann der Fehler liegen am nvidia Treiber glx oder eventuell doch an xbmc ?
    ich denke das xbmc da einen hau hat
    mfg det

    Jeder sollte sein Leben so leben können wie er/sie es möchte, frei und
    unabhängig, in der Not anderen zur Seite stehend, nie vergessen was man
    ist, eben einfach nur Mensch sein mit allen Schwächen und Stärken
    Lieber stehend sterben als ewig gebückt leben

  • @all


    Auf steffen_b's initiative haben wir den Hinweis auf einen Patch bekommen, der das Problem beheben soll. Wir haben diesen mal in die xbmc Pakete aus "testing-xbmc" eingebaut, morgen früh/vormittag könnte ihr mal testen, der build dauert noch etwas.


    Regards
    fnu

    HowTo: APT pinning

    Einmal editiert, zuletzt von fnu ()

  • Gibts da nicht schon eine xbmc-odk72-Version?
    Gruß

    VDR1 yaVDR 0.6: Gehäuse: OrigenAE X15e Board: Giada MG-C1037-SL Grafik: GT620 CPU: Celeron 1037U Ram: 2GB DVB: CineS2 Festplatte: 2x1TB
    VDR2 yaVDR 0.6: Gehäuse: Streacom F7C Board: Zotac Z68ITX-B-E Grafik: GT430 CPU: Pentium G630 Ram: 8GB DVB: CineS2 Festplatte: 30GB mSata + 500GB 2,5
    VDR3 yaVDR 0.6: Gehäuse: HP N36L Ram: 8GB DVB: 2 x CineS2 Festplatten: 2x 1,5TB und 2x2TB
    OctopusNet V1 + Rack 4xS2 + 8xS2

  • Ich hab den neuen Build heute morgen ausprobiert, bei rund 15 mal starten und beenden von xbmc ist er mir nicht ein einziges mal hängen geblieben.


    Ich Teste aber noch weiter bzw. verifiziere noch was..

  • Gibts da nicht schon eine xbmc-odk72-Version?


    Mag sein, aber die müßte genauso gepatched werden. Es steht Dir frei entsprechende Pakete zu nutzen oder gar anzubieten, der Stand in "testing-vdr" entspricht XBMC 11.0 final.


    bei rund 15 mal starten und beenden von xbmc ist er mir nicht ein einziges mal hängen geblieben.


    Das hört sich vielversprechend an :)


    Regards
    fnu

    HowTo: APT pinning

    Einmal editiert, zuletzt von fnu ()


  • Das hört sich vielversprechend an :)


    Regards
    fnu


    Habe testing-vdr repo als paketquele hinzugefügt und VDR + XBMC upgedated. Danach reboot (da auch gleich ein kernel update von Ubuntu dabei war) und getestet. Gleich die ersten beiden male, die ich XBMC gestartet und beendet habe, der gleiche Fehler, das übliche killall -9 xbmc.bin hilft ins VDR xine frontend zurück zu kommen. habs auch in XBMC->Systeminfo gecheckt, die Version ist die am 2.4.12 compilierte. Schade das.


    in welchem paket ist denn der patch zu finden und welche version ? dann prüfe ich das nochmal um sicher zu gehen.


    OsZ

    Hardware: JJ NU-0528i-B-CR : POV ION 330 : 2GB RAM : 1.5TB WD : TeVii S470 : OneForAll-7960
    Software: yaVDR 0.4 stable

  • Hallo Leute,


    leider hat das Update bei mir keine Besserung gebracht.


    Danke trotzdem.


    Hergorn

    VDR: ASROCK 330 Pro (ION), 2x Sundtek USB-DVB-C , yavdr 4 stable aktuell, XBMC Paket aus "unstable-xbmc" PPA, ÖR und Private bei KD laufen, \video per NFS vom QNAP eingebunden

Jetzt mitmachen!

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