Logitech Medien Server als Musikzentrale
Installation des Servers und der Clients, Bewertung der verschiedenen Clients.
Server-Programm
Der Server wurde von einer durch Logitech aufgekauften Firma unter dem Namen "SqueezeBox" entwickelt und die Entwicklung 2012 eingestellt. Der Quellcode wurde dankenswerterweise freigegeben so dass er für jedermann verfügbar ist.
Wer sich den Aufwand nicht antun möchte alles selbst einzurichten kann mal auf der Seite von max2play vorbeischauen. Diese bieten die gleiche Lösung an, aber mit eigenen Komponenten aufgewertet. Nachteil: die kostenlose Nutzung ist etwas eingeschränkt und man muss eine Jahresgebühr für den "Premium-Service" bezahlen.
Und als Schwabe geht das ja gar nicht, darum habe ich mich selbst schlau gemacht. Aber im Ernst, es sind nur zehn Euro im Jahr, das ist nun wirklich nicht die Welt. Mich stört aber daran dass ich mich damit an diesen Anbieter kette und, sollte dieser aus irgendwelchen Gründen aufhören, die Preise erhöhen oder in Europa keine Dienste mehr anbieten habe ich ein Problem. Darum schaue ich lieber selbst was ich tun kann.
Außerdem hat mich die Preispolitik für die Hardware abgeschreckt. Ein Pi mit Audiokarte kostet dort mal kurz das Doppelte wie im freien Markt.
Installation
Als Server habe ich den Pi auserkoren auf dem auch meine Medien liegen damit die Daten nicht mehrfach über das Netz laufen müssen. Da die externe Platte per USB angeschlossen ist kann es sein dass es bei vielen gleichzeitigen Zugriffen Performanceprobleme gibt (der USB des Pi ist nicht gerade schnell und der Netzwerkverkehr teilt sich die Bandbreite mit dem USB), aber das warte ich erst einmal ab.
Auszuführen war:
Den Pi sicherheitshalber aktualisieren:
sudo apt-get update && sudo apt-get dist-upgrade
Dann ein paar Libraries installieren die der LMS benötigt:
sudo apt-get install -y libsox-fmt-all libflac-dev libfaad2 libmad0
Auf einem neu installierten Raspbian ohne die Standard-Applikationen fehlten noch ein paar andere Pakete, diese mit
sudo apt-get install -y perl-openssl-abi-1.1 libnet-ssleay-perl libio-socket-ssl-perl
installieren.
Die Server-Software von Logitech herunterladen
wget -O logitechmediaserver_all.deb $(wget -q -O - "http://www.mysqueezebox.com/update/?version=7.9.2&revision=1&geturl=1&os=deb")
Und die Installation ausführen:
sudo dpkg -i logitechmediaserver_all.deb
Danach lief der Server auf Port 9000. Er fand die Musik nicht selbstständig, aber nachdem ich ihm gezeigt habe wo ich sie abgelegt hatte funktionierte es.
Troubleshooting
Nach einer Neuinstallation hatte ich das Problem dass der Server eben NICHT auf Port 9000 zu erreichen war. Ein
ps -Al
zeigte dass der Prozess läuft, aber
sudo lsof -i -P -n
ergab dass der Port nicht belegt war. Ich bin im Moment noch auf der Suche warum das nicht klappt.
Leider sind alle Guides und Hilfen schon sehr alt - ein Nachteil daran ein solch altes Produkt zu verwenden.
Mehr dazu am Schluss.
Die Bedienmöglichkeiten gefallen mir schon recht gut, ich kann alle angemeldeten Player steuern und auch synchronisieren. Dann spielen beide Player die gleichen Stücke auch wenn man einen wechselt. Eine Zeitlang schien es auch so als ob die Lautstärken abgeglichen werden, aber diese kann man individuell regeln.
Leider ist zwischen Playern verschiedener Typen zumindest bei Wiedergabe von Radiostreams ein Versatz zu hören. Nicht viel, aber genau so viel dass es in einem Raum stört. Auf verschiedene Zimmer verteilt geht es hoffentlich besser. Ich bin nicht sicher ob der Versatz an der Übertragungsform liegt oder am Gerät selbst - das eine war mein PC am LAN-Kabel, das andere der Zero via WLAN.
Die Bedienung des Servers ist etwas unschön da alles immer dynamisch aufgebaut wird. Das kann manchmal lästig werden. Wechsele ich zum Beispiel aus einem Album wieder in die Liste der Künstler weiß der Server nicht mehr wo ich war und baut die Seite komplett neu auf. Das bedeutet dass ich ziemlich viel scrollen muss.
Alles ist auch etwas langsam und träge - vielleicht wäre es sinnvoll das Ganze auf einem PC laufen zu lassen. Es ist meines Wissens ein PHP- oder Python-Projekt.
Clients
PC via Kommandozeile und per SqueezePlayer
Der erste Client den ich installierte war SqueezeLite für den PC. Das ist ein Kommandozeilenprogramm ohne jegliche Oberfläche, die gesamte Bedienung muss vom Server oder einem anderen Client aus erfolgen. Das funktioniert aber überraschend gut, ist aber auf Dauer natürlich recht unhandlich.
Besser ist das Programm "SqueezePlayer" das eine übersichtliche Oberfläche bietet und auch die Steuerung anderer Clients zuläßt. Allerdings scheint es speziell für ein winziges Display entwickelt worden zu sein, es läßt sich nämlich nicht vergrößern. Die Bedienung ist auch etwas unfreundlich, aber ich hoffe daran gewöhne ich mich noch.
Angeblich soll es auch gehen dass etablierte Abspielprogramme (entweder direkt oder per Plugin) auf den LMS zugreifen und von diesem Musik erhalten können. Das wäre eine interessante Alternative zu diesem Programm.
Kosten: 0€ da ich schon einen Pi sowie den PC am Laufen habe. Ein Pi 3 B+ kostet im Moment 35€, dazu benötigt man noch ein Netzteil für ca. 5€.