XBMC RFID MP3-Player

  • Hallo,

    ich habe von >hier< einem XBMC Player mal nachgebaut und soweit hat fast alles funktioniert.

    Wo es jetzt noch hängt, ist beim abspielen. Die Karten werden mit der *.m3u Datei verknüpft und die playlists.db wird erstellt.
    Nicht verknüpfte Karten werden auch gemeldet. Bei verknüpften Karten passiert dann aber nichts. Keine Meldung, Fehler oder Sound.

    In der Log-Datei steht:

    Code
    2015-01-21 22:34:12,981 INFO     Card's playlist has m3u extension
    2015-01-21 22:34:12,984 INFO     Card 0005955124 is assigned to /home/xbian/.xbmc/userdata/playlists/music/test.m3u
    2015-01-21 22:34:12,986 ERROR    Playback: File (/home/xbian/.xbmc/userdata/playlists/music/test.m3u) could not be opened

    Im Script rfid-music.py steht bei dieser Meldung in Zeile 189 und 190:

    Code
    except IOError:
       print >> sys.stderr, "Playback: File (%s) could not be opened" % playlist


    Was soll mir diese Meldung sagen und warum wird die *.m3u nicht abgespielt?
    Im XBMC selber wird die *.m3u abgespielt. (mir der Maus angeklickt)

    Danke

  • Hi, doofe Frage, aber die Playlist Datei liegt wirklich genau an dem Ort /home/xbian/.xbmc/userdata/playlists/music/test.m3u?

    Edit: Da war wohl dbv schneller :P

    Einmal editiert, zuletzt von Bart (22. Januar 2015 um 09:24)

  • Es war gestern schon spät, aber ich habe immer wieder den Pfad verglichen und die *.m3u liegt auch dort. Werde es aber heute Abend nochmal prüfen.

    Die *.m3u habe ich von Hand erstellt und auch mit dem m3u.py. Das Script legt die *.m3u auch zu den MP3´s welche ich nach /home/xbian/.xbmc/userdata/playlists/music/ kopiert habe.

    Wie kann ich die Berechtigungen der Datei prüfen?


  • Poste mal was ein

    Code
    ls -la /home/xbian/.xbmc/userdata/playlists/music/

    sagt

    Code
    xbian@xbian ~ $ ls -la /home/xbian/.xbmc/userdata/playlists/music/
    total 8760
    drwxr-xr-x 1 xbian xbian      52 Jan 21 22:30 .
    drwxr-xr-x 1 xbian xbian      30 Dec 15 22:42 ..
    -rw-r--r-- 1 xbian xbian 3085721 Jan 21 20:51 01.mp3
    -rw-r--r-- 1 xbian xbian 3892396 Jan 21 20:51 02.mp3
    -rw-r--r-- 1 xbian xbian 1981473 Jan 21 20:51 03.mp3
    -rw-r--r-- 1 root  root      158 Jan 21 22:30 test.m3u

    Der Inhalt der m3u:

    Code
    #EXTM3U
    /home/xbian/.xbmc/userdata/playlists/music/01.mp3
    /home/xbian/.xbmc/userdata/playlists/music/02.mp3
    /home/xbian/.xbmc/userdata/playlists/music/03.mp3

    Einmal editiert, zuletzt von mex_ (22. Januar 2015 um 20:35)

  • Dann kommt:

    Code
    xbian@xbian ~ $ chown -R xbian:xbian /home/xbian/.xbmc/userdata/playlists/music/
    chown: changing ownership of `/home/xbian/.xbmc/userdata/playlists/music/test.m3
    u': Operation not permitted

    Edit:
    das sudo hat gefehlt
    Es geht aber immer noch nicht.

    Einmal editiert, zuletzt von mex_ (22. Januar 2015 um 20:43)

  • Code
    xbian@xbian ~ $ ls -la /home/xbian/.xbmc/userdata/playlists/music/
    total 8760
    drwxr-xr-x 1 xbian xbian      52 Jan 21 22:30 .
    drwxr-xr-x 1 xbian xbian      30 Dec 15 22:42 ..
    -rw-r--r-- 1 xbian xbian 3085721 Jan 21 20:51 01.mp3
    -rw-r--r-- 1 xbian xbian 3892396 Jan 21 20:51 02.mp3
    -rw-r--r-- 1 xbian xbian 1981473 Jan 21 20:51 03.mp3
    -rw-r--r-- 1 xbian xbian     158 Jan 21 22:30 test.m3u
  • Code
    2015-01-22 20:21:58,013 INFO     Card's playlist has m3u extension
    2015-01-22 20:21:58,015 INFO     Card 0005955124 is assigned to /home/xbian/.xbmc/userdata/playlists/music/test.m3u
    2015-01-22 20:21:58,018 ERROR    Playback: File (/home/xbian/.xbmc/userdata/playlists/music/test.m3u) could not be opened
    2015-01-22 20:22:07,449 ERROR    Traceback (most recent call last):
    2015-01-22 20:22:07,452 ERROR      File "rfid-music.py", line 127, in <module>
    2015-01-22 20:22:07,454 ERROR    for event in dev.read_loop():
    2015-01-22 20:22:07,457 ERROR      File "/usr/local/lib/python2.7/dist-packages/evdev/device.py", line 254, in read_loop
    2015-01-22 20:22:07,459 ERROR    r, w, x = select([self.fd], [], [])
    2015-01-22 20:22:07,461 ERROR    KeyboardInterrupt

    Der untere Teil kommt aber sicher durch das Abbrechen.

    Ich wollte mir mal die Datenbank anzeigen lassen mit cardmgr.py

    Dann kommt aber:

    Code
    xbian@xbian ~/xbmc-rfid-music sudo python cardmgr.py -l
    cardmgr.py: option -l not recognized
             for help use --help

    Laut Beschreibung soll es aber so funktionieren oder?

    Um die m3u woanders zu speichern, müsste ich alle Script durchschauen wo der Pfad geändert werden muss. Wenn ich da was übersehe, habe ich den nächsten Fehler.

    Einmal editiert, zuletzt von mex_ (22. Januar 2015 um 21:34)

  • Welchen Pfad soll ich für die Playlists am besten nehmen?

    • Offizieller Beitrag

    So, das war mir jetzt doch zu seltsam und ich habs mir mal per Teamviewer angeschaut. Die doku hat nen kleinen Fehler, so das er am Ende 2. mal den Pfad zusammenbaut

    Code
    /home/xbian/.xbmc/userdata/playlists/music//home/xbian/.xbmc/userdata/playlists/music/test.m3u

    Dadruch das die originale Fehlermeldung aber durch den except IOerror part überschrieben wurde, hat es deutlich mehr Zeit gefressen den Fehler zu finden, als wenn die Exception unbehandelt geworfen wurde.

  • Noch einmal vielen lieben Dank an dbv für die Hilfe!

    Laut Anleitung unter Punkt 7 soll man die Karten den Playlisten zuweisen mit:

    Code
    python addcard.py ~/.xbmc/userdata/Playlists/music/PlayListFile.m3u

    Das ist etwas zuviel! Einfach nur:

    Code
    sudo python addcard.py PlayListFile.m3u


    eingeben und dann klappt es auch.

    Mit dem cardmgr.py soll man die Datenbank verwalten können, was nicht funktioniert.

    Mit einem

    Code
    sudo python cardmgr.py -l


    sollen die Karten aufgelistet werden. Es kommt aber:

    Code
    xbian@xbian ~/xbmc-rfid-music $ sudo python cardmgr.py -l
    cardmgr.py: option -l not recognized
             for help use --help

    dbv hatte das auflisten noch hin bekommen.
    Oben wurde eingefügt:

    Code
    playlistsdb = "/home/xbian/xbmc-rfid-music/playlists.db"

    und unten:

    Code
    listcards()

    Damit wurden mit einem

    Code
    sudo python cardmgr.py


    die Karten aufgelistet.

    Um die Datenbank später besser zu verwalten wären die Optionen schon nicht schlecht.
    Kann sich einer erklären warum das nicht funktioniert?
    Die einzelnen Befehle funktionieren ja, nur die Optionen nicht.

    Danke

  • Hallo, ich habe mir auch die Komponenten bestellt und würde gerne das Skript nutzen.

    Jedoch gerne in Verbindung mit meinem Logitech Media Server. Dieser lässt sich per CLI über Telnet Steuern. Dafür muss eine Telnetverbindung aufgebaut werden und anschließend ein Befehl abgesetzt werden. Der erste Teil des Befehls ist statisch und hinten kommt ein dynamischer Teil ran, was abgespielt werden soll (z.B. Ein Spotify Album). Den dynamischen Teil würde ich dann gerne auf den Karten "speichern".
    Jetzt ist die Frage, was ich alles ändern muss?

    Hat jemand hier eine Idee oder vielleicht schon was fertiges?

    Viele Grüße
    Tobi


  • Hat hier vielleicht jemand ne Idee der einen Ticken besser Python kann als ich? :)
    Ich fände es auch sehr nützlich, wenn die Optionen wieder funktionieren würden :)

  • Hey Zusammen, dank euren Beiträgen konnte ich meinen Rfid-player zum laufen bringen, vielen Dank dafür! Jetzt habe ich nur noch ein Problem:

    Laut der Doku sollte ein Autostart über

    Zitat

    [font="Helvetica Neue, Helvetica, Segoe UI, Arial, freesans, sans-serif"]9a) If you want to run the system as a service do the following:[/font]

    [font="Consolas, Liberation Mono, Menlo, Courier, monospace"]sudo chmod 755 rfid-music.py
    sudo cp xbmc-rfid-music /etc/init.d/
    sudo chmod 755 /etc/init.d/xbmc-rfid-music
    sudo update-rc.d xbmc-rfid-music defaults[/font]

    dies führt bei mir zur Fehlermeldung

    Zitat

    [font="Menlo"] $ sudo cp xbmc-rfid-music /etc/init.d/[/font]

    [font="Menlo"]cp: omitting directory `xbmc-rfid-music'[/font]

    das rfid-music.py Skript startet bei mir inzwischen zwar automatisch, allerdings muss ich über ssh
    zuvor immer das xbian sudo Passwort eingeben. Andernfalls funktioniert es nicht.Das ist natürlich so nicht zu gebrauchen. Das ganze ist für meine 1 jährige Tochter gedacht zum Musik hören. Die Karte auflegen kann sie schon. Aber Passwörter eingeben ist noch etwas zu früh.
    Kann mir jemand helfen den Autostart des Skriptes ohne Anmeldung und Sudo Passwort hinzubekommen? Vielen Dank für euere Hilfe!!!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!