XBMC-FAQ

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Welche Personen stecken hinter der XBMC-PVR-VDR-Entwicklung?

  • pingpong aka Alwin aka alwinus: Entwickler der nötigen Erweiterungen für VDR und das streamdev-Plugin und des VDR-pvrclients für XBMC, tummelt sich nun auch im unified-pvr-Branch von XBMC
  • alcoheca: Initiator und Entwickler des unified-pvr-Branches von XBMC. Alcoheca ist nicht deutschsprachig und liest im VDR-Portal höchstens passiv mit. Er ist wohl im XBMC-Forum besser zu erreichen.
  • freezy: Hat ein sehr gutes Tutorial geschrieben, das die meisten genutzt haben, um XBMC+Streamdev+VDR 1.7.x zum Laufen zu kriegen

Welches sind die wichtigsten Informationsquellen zu XBMC + VDR?

Wo gibt's den Sourcecode zum XBMC-TV-Frontend mit VDR-Support?

Alle Patches von pingpong sind im XBMC Trac Ticket #5595 zu finden. Momentan wird empfohlen, diese Patches zu benutzen. Der SVN-Stände aus den folgenden beiden Quellen sind derzeit noch nicht lauffähig (pingpong sagt Bescheid, wenn es sich lohnt, von dort zu bauen):

Features: Wieviel VDR-Power bleibt im gepatchten XBMC übrig?

Die aktuellste Liste von Features findet sich im XBMC Trac Ticket #5595 (link oben). Hier nur die wichtigesten Features, die jetzt schon (teilweise mit Bugs) funktionieren:

  • Live-TV schauen und zappen / Radiokanäle anhören
  • Aufnahmen adhoc starten und Timer programmieren
  • EPG und TV-Guide browsen und Sendungs-Infos lesen, Sender aus TV-Guide auswählen

Sachen, die nicht gehen und die es kurzfristig wahrscheinlich nicht geben wird:

  • Schnittmarken setzen
  • noad
  • Kein Zugriff auf's VDR-OSD und somit kein direkter Zugriff auf die Vielzahl an Plugins
  • Eigentlich nicht im "Zuständigkeitsbereich" von pingpong: Wir verwöhnten VDR-User sind mit den momentanen De-Interlacing-Möglichkeiten von XBMC unzufrieden. Aber das kann sich ändern - zum Beispiel kann VDPAU-Deinterlacing momentan noch gar nicht mit SDTV getestet werden, weil XBMC momentan SDTV nie via VDPAU rendert.

Kann ich auf einem Linux-Rechner ein XBMC-Frontend und das klassische VDR-Frontend parallel betreiben?

Es gibt einen User im XBMC-Forum, der da so macht. Er hat sich ein Umschalt-Script geschrieben, um zwischen beidem hin- und herzuschalten: Weitere Infos hier.

Auf welchen Plattformen kann man XBMC+VDR ausprobieren?

XBMC und der VDR müssen nicht auf dem gleichen Rechner laufen. Da die Kommunikation über das VDR-Plugin Streamdev-Server abläuft, ist es nur eine Frage der Netzwerk-Geschwindigkeit. (Laufen beide Komponenten nicht auf dem gleichen Rechner, sind beispielsweise bei WLAN@54mbit ab und zu Verzögerungen spürbar. Diese sind aber nicht extrem, sie können verschmerzt werden.)

Linux

Die XBMC-Entwickler testen die Linux-Version vor allem mit Ubuntu und bieten auch nur für Ubuntu fertige Pakete an. Somit ist es am unproblematischsten, mit Ubuntu zu arbeiten. Andere Debian-nahe Systeme sollten wohl auch funktionieren. (Ich selbst habe bisher nur Ubuntu eingesetzt.)

Windows

Der VDR läuft nicht unter Windows, aber XBMC schon. pingpong testet seine Erweiterungen für XBMC auch unter Windows. Er weist darauf hin, dass der neueste Patch für XBMC vom 23.04.2009 noch nicht unter Windows baut. Wer unbedingt XBMC unter Windows + VDR unter Linux nutzen will, sollte den Patch vom 04.04.2009 ausprobieren. Um ein Selberbauen kommt man momentan nicht herum, es gibt momentan keine fertigen Binaries zum Download, welche die PVR- und VDR-Patches enthalten.

Sonstige

XBOX1? Es ist nicht undenkbar. Mehr ist mir hier nicht bekannt. Vor einiger Zeit gab es ja ein in Python programmiertes Script namens xstreamdev, das man auf der XBOX1 unter XBMC einsetzen konnte, um über streamdev TV zu schauen und zu zappen. Dies ist jedoch lange nicht gepflegt worden, und pingpongs Implementierung ist halt um den Faktor 1000 attraktiver.

Läuft der VDR out-of-the-box als XBMC-Backend?

Nein. Der VDR muss mit pingpongs Patches ausgestattet und neu gebaut werden, gleiches gilt auch für das Plugin streamdev-Server. Am einfachsten geht dies, wenn man die PATCHVARIANT=extensions benutzt. Weitere Infos findet man hier im VDR-Portal. Ich denke, jemand von Euch sollte hier einen neuen Thread aufmachen mit dem Namen "VDR+streamdev für XBMC bauen - FAQ". ;-)

Fragen zum VDR-Plugin streamdev-server

Warum muss das VDR-Plugin streamdev-server gepatcht werden?

Es sind dem VTP neue Befehle hinzugefügt worden, die benötigt werden, um von XBMC aus die nötigen Informationen vom VDR zu bekommen. Alwin und smirl, der Autor des streamdev-Plugins sind in Kontakt. Die Änderungen von Alwin werden wohl in den offiziellen streamdev-Code aufgenommen, wenn die Schnittstelle nicht mehr verändert werden muss und Locking-Bugs beseitigt sind.

Welche neuen Befehle gibt's denn nun im Plugin streamdev-server?

Beschreibung der neuen/modifizierten Befehle (Stand: Patch vom 23.4.2009, Infos unten kopiert aus Ticket #5595):

  • Added "LSTE channel FROM time_t TO time_t" command (Thanks to alcoheca)
  • Changed "LSTE all" for list all to entries from current date
  • Removed changes to "LSTE channel ALL" command
  • Added Contents (Genre) to LSTE command with VDR-Extension-Patch and Parental-Rating patch and USE_PARENTALRATING enabled

Added Following commands to the VTP:

  • STAT name = Return VDR Software Name
  • STAT version = Return VDR Version
  • STAT disk = Return recording disk space
  • STAT timers = Return the number of Timers
  • STAT records = Return the number of Recordings
  • STAT CHARSET = Return the backend charset encoding
  • NEXT = adopted from SVDRP
  • LSTR = adopted from SVDRP
  • DELR = adopted from SVDRP
  • RENR = adopted from SVDRP with VDR-Extension-Patch and USE_LIEMIKUUTIO enabled
  • NEWC = adopted from SVDRP
  • MODC = adopted from SVDRP
  • MOVC = adopted from SVDRP
  • DELC = adopted from SVDRP

Wie kann ich die neuen Befehle in streamdev-server testen?

Zugriff auf die VTP-Kommandos vom vdr-plugin-streamdev-server ist auch über die Konsole per telnet möglich:

telnet 127.0.0.1 2004
stat version
quit
...

Wobei 127.0.0.1 durch die IP des VDR zu ersetzen ist, wenn er nicht auf dem gleichen Rechner läuft.

Ich weigere mich komplett, irgendeine Komponente selbst zu kompilieren. Kann ich nicht trotzdem mit XBMC Live-TV streamen?

Ja, aber es ist alles andere als komfortabel. Man braucht immer noch VDR + vdr-plugin-streamdev-server + XBMC. pingpong erklärt hier, wie's geht.

HDTV läuft unter Linux mit XBMC dank VDPAU problemlos?

Momentan leider bei manchen ja, bei manchen nein, je nach SVN-Revision von XBMC und Nvidia-Treiber-Version. Vor einem Monat lief es schon mal ziemlich gut (so bei SVN Revision 18245), aber mit dem momentanen Stand gibt's Bugs, die hoffentlich bald lokalisiert werden. Ansonsten:

  • Wenn man in den XBMC-Settings "VDPAU" anschaltet, heißt das noch lange nicht, dass es auch für jegliche Videotypen genutzt wird. Hier und hier steht ein bisschen mehr darüber, in welchen Fällen XBMC VDPAU aktiviert.
  • Zu Abstürzen von Live-HDTV bei aktiviertem VDPAU bitte dieses Posting lesen.
  • Bis ich dazu komme, hier was aktuelles zusammenzuschreiben, bitte mal 8 Stunden Zeit nehmen und diesen Thread lesen: [1]

Woher bekommt man fertige Ubuntu-XBMC-Pakete?

Vorbemerkung: Keines der fertigen Binary-Packages aus den PPA's vom Team XBMC kann derzeit als VDR-Frontend genutzt werden. Bisher ist weder der Code für die PVR-Unterstützung noch der Code von pingpongs VDR-Pvrclient darin enthalten. Beides ist bisher nicht Bestandteil des Branches, auf dem die 9.04er-Versionen aufbauen. Der Unified-PVR-Code wird im Branch unified-pvr entwickelt.

  • XBMC-Pakete ohne VDR-Support: XBMC 9.04 Releases vom Team XBMC können über die verschiedenen Launchpad PPA's vom Team XBMC bezogen werden, sowohl fertige Binary-Packages als auch Source-Archive (zum Selberbauen). Es gibt verschiedene PPA's, eine Übersicht gibt es im XBMC-Wiki: HOW-TO_XBMC_for_Linux. Wem der SVN-Stand von XBMC 9.04 schon zu alt ist: Im SVN PPA gibt es - immer am Puls der Zeit - alle drei bis vier Tage die neuesten SVN-Stände aus dem Branch "linuxport".
  • XBMC-Pakete mit VDR-Support: Hier gibt es bisher keine offiziellen Kanäle. Weder das Team XBMC, noch alcoheca noch pingpong bieten Ubuntu-Packages, weil sich am Code noch viel zu viel viel zu schnell ändert. Deshalb kompilieren die meisten Leute hier ihr XBMC selbst. Wer will, kann mein Lauchpad PPA verwenden und sich von dort XBMC-Binaries mit VDR-Support herunterladen. Ich benutze die Pakete selbst, gebe jedoch keine Garantie, das es auch bei Euch funktioniert und ich gebe auch keinen Support: [2] .
  • ISO-Image: Det bietet eine Ubuntu-VDR-Distribution als ISO-Image an, mit der man XBMC+VDR testen kann: Es lebe ubuntu VDR und XBMC

Wie kann ich XBMC mit pingpongs Patch selber bauen?

Der momentan aktuelle Patch für XBMC (Name: xbmc-svn19616-pvr.patch) lässt sich bis linuxport Revision r19955 ohne Rejects anwenden.

Mehrere Wege sind möglich:

  • Ausgehend von einem SVN-Checkout mit checkinstall Pakete bauen. Siehe dazu freezy's Tutorial, Schritt 6.
  • Aus gepatchten Ubuntu-Sourcepaketen deb-Pakete bauen. [Anmerkung: Wenn man sich XBMC selbst kompiliert aus einem Ubuntu-Sourcepaket + pingpongs Patch vom 23.04., dann landet die brandneue pvrclient-Geschichte nicht im Binary xbmc-common und die Liste der pvrclients bleibt völlig leer. Lösung: In der Datei "debian/xbmc-common.install" die Zeile "usr/share/xbmc/pvrclients" hinzufügen.]
  • Ganz neu: aelo hat hier ein neues Howto geschrieben, siehe Thread HOWTO XBMC + VDR kompilieren (mit aktuellsten Patches vom 22.4.2009 (Ubuntu 9.04) .

XBMC-Pakete installieren - welche davon sind wichtig?

Folgende XBMC-Pakete gibt es in den PPA's oder nach dem Selberbauen auf der Platte. Die fettgedruckten sind diejenigen, die bei einem [I]sudo apt-get install xbmc[/I] installiert werden:

  • xbmc - The Full XBMC meta package
  • xbmc-common - XBMC common package
  • xbmc-common-dbg - XBMC Debug symbols
  • xbmc-eventclients-common - XBMC Event Client Common package
  • xbmc-eventclients-dev - XBMC Event Client Dev package
  • xbmc-eventclients-j2me - XBMC Event Client J2ME package
  • xbmc-eventclients-ps3 - XBMC Event Client PS3 package
  • xbmc-eventclients-wiiremote - XBMC Event Client for WII Remote support
  • xbmc-scripts-example - XBMC default scripts package
  • xbmc-skin-pm3 - XBMC Project Mahem III skin package
  • xbmc-skin-pm3-hd - XBMC PM3 HD skin package
  • xbmc-web-eflexweb XBMC - Webserver Eflex web skin package
  • xbmc-web-iphone-tlrobinson XBMC - Webserver Iphone skin package
  • xbmc-web-pm XBMC - Webserver Project Mahem skin package
  • xbmc-web-pm3 XBMC - Webserver Project Mahem III skin package

Mehr Pakete als die fettgedruckten braucht man nicht zu installieren (wobei man für unsere Zwecke keinen Nutzen aus dem web-Paket zieht).

Wie konfiguriere ich XBMC?

Nach dem Starten will man XBMC mitteilen, dass man TV über VDR schauen will. Dazu geht man in Einstellungen -> Video -> TV -> Klienten verwalten -> Hinzufügen -> VDR ->OK. (Evtl. IP-Adresse anpassen, wenn der VDR nicht auf dem gleichen Rechner läuft) Danach noch oben drüber "Aktivieren" anklicken. Nun sollte im Hauptmenü der Punkt "TV" auftauchen.

Wie kann ich XBMC-Problem-Diagnose betreiben?

Wo liegt mein XBMC-Profilverzeichnis, in dem alle Konfigurationsfiles enthalten sind?

Normalerweise: /home/ich/.xbmc/

Wo liegen die Einstellungen für den PVR-Client?

In der XML-Datei /home/ich/.xbmc/userdata/addons.xml befindet sich bei mir folgender Abschnitt:

<addons>
    <pvr>
        <addon>
            <name>VDRClient</name>
            <path pathversion="1">addon://pvrclients/VDR/</path>
            <thumbnail pathversion="1">special://xbmc/pvrclients/VDR/vdr.tbn</thumbnail>
        </addon>
    </pvr>
</addons>

In der XML-Datei /home/ich/.xbmc/userdata/addon_data/pvrclients/VDR/settings.xml befindet sich bei mir folgender Abschnitt:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<settings>
    <setting id="host" value="192.168.1.111" />
    <setting id="port" value="2004" />
    <setting id="ftaonly" value="false" />
    <setting id="useradio" value="true" />
    <setting id="convertchar" value="true" />
</settings>

In der XML-Datei /home/ich/.xbmc/userdata/guisettings.xml befindet sich bei mir folgender Abschnitt:

   <pvrepg>
       <daystosave>7</daystosave>
       <epgscan>5</epgscan>
       <epgupdate>60</epgupdate>
   </pvrepg>
   <pvrmanager>
       <enabled>true</enabled>
       <pvrsources></pvrsources>
       <sep1></sep1>
   </pvrmanager>
   <pvrmenu>
       <daystodisplay>2</daystodisplay>
       <hidevideolength>true</hidevideolength>
       <iconpath></iconpath>
       <infoswitch>true</infoswitch>
       <infotime>5</infotime>
       <infotimeout>true</infotimeout>
       <lingertime>0</lingertime>
       <scantime>5</scantime>
       <sep1></sep1>
       <showradio>true</showradio>
   </pvrmenu>
   <pvrrecord>
       <defaultlifetime>99</defaultlifetime>
       <defaultpriority>50</defaultpriority>
       <instantrecordtime>180</instantrecordtime>
       <marginstart>2</marginstart>
       <marginstop>10</marginstop>
       <sep1></sep1>
       <timeshift>false</timeshift>
       <timeshiftcache>512</timeshiftcache>
       <timeshiftpath></timeshiftpath>
   </pvrrecord>

Wo speichert XBMC meine VDR-Kanalliste und die EPG-Daten?

In /home/ich/.xbmc/userdata/Database/MyTV1.db. Das ist eine SQLite-Datenbank, deren Inhalt man sich beispielsweise mit "SQLite Database Browser" anschauen kann.

Wo liegt das Logfile von XBMC?

/home/ich/.xbmc/xbmc.log (bzw. xbmc.old.log)

XBMC crasht, und im Logfile steht nix darüber?

Vorschlag: XBMC mal von der Kommandozeile starten und schauen, was dann nach dem Crash in der Shell steht. Oder: Debug Logging aktivieren, dann steht bedeutend mehr im xbmc.log

Während des Playbacks: Welcher Methode wird jetzt gerade verwendet, um Audio/Video zu rendern?

Auf Tastatur 'o' drücken, um die codecinfos einzublenden. Wenn vdpau genutzt wird, muss nun der String "_vdpau" auftauchen. Wenn er nicht auftaucht, wird auch gerade kein VDPAU genutzt, um dieses Video abzuspielen.

Welche Version von XBMC verwende ich eigentlich gerade?

Im Hauptmenü von XBMC den Quit-Button unten rechts drücken, so als wenn man XBMC schließen will. Danach den ganz linken 'i'-Button drücken. Dann steht unten die genaue Versionsnummer.

Wie kann ich den XBMC-Debug-Mode einschalten?

Menü Einstellungen -> System -> Aktiviere Fehler-Logging

Welche bekannten Bugs gibt es beim TV-Schauen mit XBMC?

Eigentlich sammelt pingpong Bugs in einem anderen Thread, aber da der andere Thread schon sehr lang und unübersichtlich ist, habe ich das hier mit reingenommen. Wenn das unerwünscht ist, kann ich das hier wieder rausnehmen.

Bekannte Probleme in XBMC 9.04 (die nichts mit der VDR-Integration zu tun haben)

  • Empfehlung: XBMC unter Ubuntu und Gnome: Compiz-Desktop-Effekte ausschalten!
  • [Behoben mit linuxport r19835] Das Umschalten auf Kanäle, für die XBMC die VDPAU-Engine benutzt, also HD-Kanäle (h.264), führt zum Crash von XBMC. HDTV kann man momentan nur schauen, wenn "VDPAU" nicht aktiviert ist. Das ist ein XBMC-Bug, den es "damals" mit Revision 18245 beispielsweise nicht gab. Weitere Details: XBMC (xbox media center) als front-end für VDR (Bugs and Features)
  • XBMC crasht unter amd64 beim Video-Playback, wenn man ein Informations-Overlay aufmachen will, z.B. die Codecinfos oder das Audio-Menü. Dazu gibt's das Ticket #6145
  • Change in Revision 19830 führt zu häufigem "Kanal blockiert oder verschlüsselt". Für weitere Infos siehe hier
  • ... to be continued

Bekannte Probleme mit dem VDR-TV-Modul von XBMC

  • Eine große Anzahl von Recordings im Aufnahmeverzeichnis des VDR (/var/lib/video) scheint XBMC zu verlangsamen.
  • Unter i386 bleibt im XBMC-Hauptmenü das Fenster "Nächste Aufnahme" leer, unter amd64 hat es Inhalt. (ist bei mir jedenfalls so)
  • Unter i386 bleibt "EPG:TV-Guide" leer. Nur die Kanalliste in der ersten Spalte ist sichtbar, aber keine Sendungen rechts daneben. Unter amd64 läuft das EPG:TV-Guide aber. User, die VDR mit parentalrating-Patch kompiliert haben, klagen über Abstürze. (Der Zweck der Verwendung des parentalrating-Patchs ist, dass man im EPG jede Sendungs-Kategorie in einer anderen Farbe eingefärbt wird.)
  • Wenn der VDR nicht läuft, meldet XBMC beim Start "Keine Verbindung zum...". Nach dem Schließen des Popups crasht XBMC mit einem "Segmentation Fault".
  • Usability: Sekundenlange Verzögerungen beim Navigieren zwischen den Buttons im TV-Menü, wenn VDR und XBMC auf zwei getrennten Rechnern über's Netzwerk kommunizieren.
  • Der Titel von Aufnahmen, die geschnitten worden sind (und daher mit dem Präfix @ ausgezeichnet sind), werden nicht angzeigt in der Recordings-Liste. Fehler steckt in PVR_ERROR PVRClientVDR::GetAllRecordings(VECRECORDINGS *results), wahrscheinlich in der Zeile "str_result.erase(0, 18);".
  • ... to be continued

--Hepi 23:52, 29. Apr 2009 (CEST)