AppleTV2 als streaming Client mit zentraler Datenbank und Thumbnails.

  • Mahlzeit,
    dies soll als kurze Anleitung dienen, wie man den AppleTV 2 als reinen streaming client benutzt, d.h. weder Datenbank, noch Thumbnails (Medien schon gar nicht) werden auf dem ATV2 gespeichert, sondern aus dem lokalen Netzwerk eingebunden.
    Beachtet werden muss dabei, dass die Datenbank Version fürs ATV2 (pre-)10.0 ist, es müssen also alle XBMC max. v10.0 sein. (*update* siehe Punkt 4.)

    1.) MySQL Datenbank.
    Zunächst müssen alle (teilnehmenden) XBMCs für die Nutzung einer MySQL Datenbank vorbereitet und die zentrale DB eingerichtet werden.
    Wie das funktioniert erfahrt Ihr hier: [HowTo] Datenbank auf MySQL umstellen und im Netzwerk verfügbar machen.
    Zusätzlich habe ich noch einen "read-only"-Datenbankbenutzer für den ATV2 erstellt:

    SQL
    GRANT SELECT ON xbmc_video.* TO 'xbmc_atv'@'%' IDENTIFIED BY 'xbmc_atv';

    2.) Thumbnails.
    Damit alle XBMCs auch Zugriff auf die selben Thumbnails haben, wird dieser Ordner im Netzwerk per samba/Windowsfreigabe freigegeben und jeweils für die teilnehmenden XBMCs eingebunden.
    Beispiel: smb.conf

    Code
    [xbmcthumbs]
    path = /home/xbmc/xbmc/userdata/Thumbnails
    valid users = xbmc

    3.) das "Einbinden" über 'pathsubstitution'.
    Da man auf dem ATV2 keine samba-shares über das Bertiebssystem iOS mounten kann, muss man sich eines kleinen Tricks im XBMC bedienen und den internen samba-client des XBMCs benutzen. Mit der "pathsubstitution" in der [definition='2','1']advancedsettings[/definition].xml wird der lokale Thumbnails-Ordner durch die Freigabe ersetzt:

    XML
    <pathsubstitution>
       <substitute>
          <from>special://masterprofile/Thumbnails</from> 
          <to>smb://xbmc:xbmc@192.168.2.2/xbmcthumbs/</to>
       </substitute>
    </pathsubstitution>



    4.) Nutzen einer gemeinsamen Datenbank mit dem ATV2 (10.0 "Dharma") und pre-11.0 "Eden". (Umgehen des Versionskonfliktes)

    Wie oben schon gesagt, ist die DB es ATVs auf dem Stand v42, der aktuelle source-code jedoch mittlerweile bei 44 angekommen.
    Um diesen Konflikt zu umgehen kann man einen mysql-proxy aufsetzen, der die Anfragen entsprechend umschreibt und die richtige Versionsnummer ausgibt.

    Code
    apt-get install mysql-proxy lua50


    Danach folgenden Text als XBMCatv42.lua in /etc/mysql/ speichern. (beispielsweise)


    Nun könnt Ihr den proxy mit folgendem Kommando, z.B. über die rc.local, starten (IP Adressen und Port evtl. anpassen):

    Code
    /usr/bin/mysql-proxy --max-open-files 1024 --proxy-lua-script=/etc/mysql/XBMCatv42.lua --proxy-address=192.168.2.2:3307 --proxy-backend-addresses=192.168.2.2:3306


    Natürlich müsst Ihr dann in der [definition='2','1']advancedsettings[/definition].xml auf dem atv2 den Port für die Datenbankverbindung auf 3307 ändern:

    XML
    <port>3307</port>


    [quelle]http://forum.xbmc.org/showpost.php?p=743080&postcount=193[/quelle]

    Fragen / Meinungen / Kritik zu diesem HowTo im entsprechenden Diskussionsthread

    2 Mal editiert, zuletzt von mad-max (16. Oktober 2012 um 15:25) aus folgendem Grund: 4. hinzugefügt.

Jetzt mitmachen!

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