Sonntag, 14. Oktober 2007 13:38
Ich besitze eine Sony PSP und bin schon seit einiger Zeit auf der Suche nach einer Möglichkeit Musik auf die PSP im lokalen WLAN zu streamen. Bis jetzt kannte ich nur einige Ansätze, die iTunes als Musikdatenbank nutzen und die Musikdatenbank dann per RSS-Feed anbieten (Die Unterstütung für RSS ist mit der PSP seit der Firmware 2.7 möglich). Wenn man allerdings einen Windows-freien PC unter seinem Schreibtisch stehen hat ist das ganze schon nicht mehr so einfach. Zudem ist man bei diesen Lösungsansätzen meist auch damit beschäftigt eigene XML-Dateien für die Feeds zu erstellen.
Aus diesem Grund habe ich mich nach einer Alternative umgeschaut und nach ein wenig googeln bin ich über das Projekt DCLXVI’s PSP_RSS [1] (Aktuelle Version 1.0p) gestoßen. Es handelt sich um ein PHP-Script, dass die lokale Medien-Bibliothek über einen Apache im Netz verfügbar macht. Die einzelnen Alben werden dabei als getrennte RSS-Feeds behandelt. Um die Musik dann auf die PSP zu streamen wird einfach das PHP-Script über den Webbrowser der PSP aufgerufen, das gewünschte Album ausgewählt und als RSS-Feed aboniert und anschließend aufgerufen. Das ganze hat out-of-the-box so einwandfrei funktioniert, dass ich die Installation hier kurz erläutern möchte.
Seit langer Zeit schon wird eine neue Version 2.0 auf der Homepage des Projekts angekündigt, die einen Flashplayer als Wiedergabefunktion nutzt. Somit würde das einrichten eines RSS-Feeds für jedes einzelne Album entfallen. Die letzte Ankündigung dieser neuen Version ist jedoch schon fast 1 Jahr her. Ich denke, dass das Projekt tot ist. Ein Preview davon ist (Bitte mit der PSP aufrufen!) unter “http://www.dclxvi.nl/psp_rss/demo” zu finden
Zunächst ist ein laufender Apache(2) mit PHP-Unterstützung notwendig. Es gibt mehr als genug Quellen im Netz, die beschreiben, wie man einen Apache mit PHP aufsetzt, daher hier am Beispiel von Ubuntu (oder anderen Linux-Distros, die apt nutzen) nur die wichtigsten Schritte:
sudo apt-get install apache2
sudo apt-get install libapache2-mod-php5
sudo a2enmod php5
Wenn man nun in einem Browser “http://localhost” eingibt sollte eigentlich die default-page von apache2 angezeigt werden (Üblicherweise eine simple Meldung “It works!”) Wenn man in das document_root von Apache gelangt sollte die Serverrückmeldung ähnlich ausssehen wie Folgendes:
” Apache/2.2.3 (Ubuntu) PHP/5.2.1 Server at localhost Port 80″
Nun laden wir uns unter [2] das Ziparchiv mit den Scripten für PSP_RSS runter. Das Archiv wird dann entpackt. Ich habe jetzt folgendes gemacht: Ich habe im document_root von Apache (/var/www) ein Verzeichnis “music” erstellt dort hin habe ich dann den Inhalt des Ziparchivs kopiert. Danach mit
sudo chmod 755 /var/www/music -R
sudo chown www-data /var/www/music -R
sudo chgrp www-data /var/www/music -R
Die Rechte so geändert, dass der Nutzer unter dem der Apache läuft auch Zugriff auf die Dateien hat.
Das Archiv kommt “von Werk aus” mit einigen Beispieldateien die im Unterverzeichnis “album_name” liegen. Dieses Verzeichnis habe ich jetzt gelöscht und durch einen Symlink auf meine Medien-Bibliothek ersetzt:
sudo ln -s /home/nicolas/ /var/www/music/sammlung
Nun kann man die Mediendatenbank von der PSP aus folgenermaßen errreichen. Über den Browser eingeben:
http://ip_des_medienservers/music
Es sollte die Startseite von PSP_RSS erscheinen:

Über dem Button “BROWSE” kann man nun die einzelnen Alben durchsuchen. Wenn innerhalb eines Albums (Also dem lokalen Unterordner auf der Festplatte) ein JPEG als Cover hinterlegt ist wird dieses auch angezeigt,

Einzelne Songs kann man nun direkt anklicken und dann auf die PSP herunterladen. Um Musik anzuhören kann man durch einen Klick auf “RSS2.0″ einen neuen Feed hinzufügen.

Die einzelnen Alben können jetzt als Feed im PSP-Menu aufgerufen werden und werden dann übers WLAN gestreamt.
Probleme hat es bei mir bis jetzt nur in der Form gegeben, dass RSS nicht mit Leerstellen im Dateinamen der Songs und Unterverzeichnisse zurechtkommt. Das Script könnte dieses Problem beheben, wenn es Schreibzugriff auf die Dateien hat. Ich habe das Problem vorübergehend gelöst, indem ich ein chmod 777 auf meine gesamte Musiksammlung durchgeführt habe. (Leider keine sonderlich elegante Lösung) Ich denke, dass man das ganze noch etwas schöner lösen könnte, wenn man das Apache2-Modul “libapache2-mod-suphp” (PHP-Scripte werden dann mit den Rechten ihres Besitzers ausgeführt) nutzt und die Dateien von PHP_RSS innerhalb des Homeverzeichnisses hostet “innerhalb von “public_html” wenn das Modul “userdir” aktivert ist.
[1] http://www.dclxvi.nl/psp_rss/
[2] http://www.dclxvi.nl/psp_rss/oldversion.asp