Squeezebox
Unter dem Namen Squeezebox wurde eine Reihe von Netzwerk-Musikplayern der Firma Logitech vertrieben. Im Jahre 2012 wurde die Squeezebox zugunsten des UE Smart Radios eingestellt, das selbst wiederum 2014 eingestellt wurde.
Dieser Artikel gibt eine kurze Übersicht und erläutert den Betrieb unter Debian.
Getestet: Dieser Hinweis soll dir dabei helfen, zu entscheiden, ob dieser Artikel auf deinem System funktionieren wird oder nicht. Solltest du feststellen, dass dieser Artikel bei einer ungetestet Version funktioniert, kannst du das gerne hier korrigieren oder im Forum anmerken.
|
Übersicht
Hardware
Über die Jahre sind unterschiedliche Geräte erschienen. Ein Squeezebox Radio, um ein Beispiel zu nennen, hat das Format eines klobigen Radioweckers und wird, da sich das Display automatisch an die Helligkeitsverhältnisse anpasst, auch gern als solcher verwendet.
Einige Geräte können mit integrierten (aber wechselbaren) Akkus betrieben werden. Line-In-Eingänge und Kopfhöreranschlüsse sind teilweise vorhanden, genau so wie eine Steuerungsmöglichkeit über eine Infrarotfernbedienung.
Mit mehreren Geräten ist absolut synchrone Multi-Room-Beschallung ermöglich.
Alle Squeezeboxen sind reine Netzwerk-Spieler. Ein UKW-Empfangsteil ist nicht verbaut und DAB+ war zum Zeitpunkt des Erscheinens Zukunftsmusik.
Eine Übersicht über alle Modelle gibt es auf Wikipedia[1] oder im Wiki auf slimdevices.com[2].
Software
Eine Squeezebox wird mit einer Linux-basierten Firmware („SqueezeOS“) betrieben, die relativ dumm ist. Der Funktionsumfang wird über den Logitech Media Server (LMS) bereitgestellt, mit dem sich eine Squeezebox verbindet. Der LMS ist in Perl geschrieben und kann unter Linux, MacOS oder Windows betrieben werden. Der LMS ermöglicht den Zugriff auf lokal gespeicherte Musiksammlungen und ist über Plugins erweiterbar.
Die separate Serversoftware ermöglicht es, der vergleichsweise alten und leistungsschwachen Hardware immer neue Fähigkeiten beizubringen. Auch übernimmt der LMS das Transkodieren von Codecs, die von der Hardware nicht unterstützt werden.
Alternativ kann sich eine Squeezebox über den Dienst mysqueezebox.com[3] mit einem von Logitech betriebenen LMS verbinden. Der Zugriff auf lokale Musiksammlungen ist dabei nicht möglich.
Steuerung
Viele Squeezebox-Modelle bieten Knöpfe und Displays zur Bedienung, es gibt aber auch Modelle, die komplett ohne auskommen.
Der LMS ermöglicht über eine Weboberfläche die Steuerung und Konfiguration der verbundenen Squeezeboxen.
Zusätzlich werden Controller-Apps für verschiedene mobile Betriebssysteme angeboten, siehe unten.
Heutige Situation
Da Logitech die Produktreihe eingestellt hat, sind Geräte heutzutage nur noch gebraucht und zu teils horrenden Preisen erhältlich.
Logitech entwickelt SqueezeOS und den Logitech Media Server nicht weiter, stellt aber einer Community um Michael Herger Infrastruktur und Bandbreite zum Betrieb eines Forums[4] und den Download der Software bereit.
Betrieb des Logitech Media Servers unter Debian
Grundsätzliches
Der LMS wird als deb-Paket für amd64, i386 und ARM bereitgestellt. Der Betrieb auf dem Raspberry Pi ist mit Einschränkungen möglich. Da der Pi relativ langsam ist, präsentiert sich die Web-Oberfläche sehr gemächlich.
Der Squeezebox-Server kann in einem Basissystem ohne grafische Oberfläche betrieben werden und hat Abhängigkeiten ausschließlich nach main.
Download und Installation
Der LMS kann unter downloads.slimdevices.com als .deb-Paket heruntergeladen werden. Für eine Squeezebox empfiehlt sich die Version 7. Version 10 ist für das UE Smart Radio gedacht; eine Squeezebox kann damit nicht betrieben werden.
Das heruntergeladene Paket installiert man über (bitte den Dateinamen entsprechend anpassen)
root@debian:~# dpkg -i logitechmediaserver_7.9.1~1513951369_amd64.deb
Falls sich dpkg über nicht erfüllte Abhängigkeiten beklagt, so erfüllt man diese über
root@debian:~# apt-get install -f
Danach startet der LMS und die Weboberfläche kann über http://lms:9000/ (lms bitte durch den Namen des jeweiligen Servers ersetzen) aufgerufen werden.
Updates
Da die Infrastruktur in die Jahre gekommen ist und Logitech diese nicht mehr wirklich pflegt, existiert leider kein Repository, das man in die sources.list eintragen kann. Für die Installation muss man das Paket daher händisch herunterladen und installieren.
Updates erfolgen teilautomatisiert in der Form, dass der LMS neue Versionen automatisch nach /var/lib/squeezeboxserver/cache/updates/ herunterladen und den Anwender in der Weboberfläche darauf hinweisen kann.
Plugins
Der Funktionsumfang des LMS kann über Plugins erweitert werden. Plugins werden mit dem LMS ausgeliefert oder können aus Repositiories, die separat eingebunden werden, installiert werden. Die Verwaltung der Plugins erfolgt in den Einstellungen unterhalb des gleichnamigen Reiters.
Transcoding
Der LMS wird transparent Codecs transkodieren, wenn das Gerät ein Codec nicht versteht. Die meisten Geräte verstehen mp3, Vorbis, FLAC und WAV.
Der LMS erkennt installierte Codecs im Allgemeinen automatisch. Details lassen sich in den LMS-Einstellungen unter Erweitert > Dateiarten einstellen.
Verschiedenes
Controller-Apps
Logitech bot Controller-Apps an, deren Pflege mit der Einstellung der Geräte beendet wurde. Die Community hat mittlerweile Apps entwickeln, die die Original-Apps ersetzen und vielfach übertreffen.
iOS
Die Original-App für iOS ist mangels Unterstützung für 64 Bit unter dem aktuellen iOS 11 nicht mehr lauffähig. Als Ersatz leistet iPeng[5] sehr gute Dienste.
Android
Diesen Abschnitt müsste jemand anders schreiben.
Spotify mit Spotty
Über das Plugin „Spotty“ kann auf Spotify zugegriffen werden. Dafür ist ein Spotify-Premium-Account erforderlich; mit einem kostenfreien, werbefinanzierten Account klappt es nicht.
Diese Anleitung bezieht sich auf Spotty in Version 1.99.x.
Zunächst wird IO:Socket:SSL installiert:
root@debian:~# apt-get install libio-socket-ssl-perl
Falls man Spotify Connect nutzen möchte (unter Spotty 1.99.x experimentell unterstützt), sollte man sicherstellen, dass noch ein paar weitere Pakete vorhanden sind:
root@debian:~# apt-get install curl pv wget
Anschließend in den LMS-Einstellungen die Plugins aufrufen. Ganz unten unter „zusätzliche Repositories“ http://www.herger.net/slim-plugins/repo.xml eingeben und auf „Übernehmen“ klicken.
Nun die Seite neu laden. Die Häkchen vor ggf. aktivierten, alten Spotify-Plugins entfernen und den vor „Spotty“ setzen. Auf „Übernehmen“ klicken und die Frage nach dem Neustart des Servers bestätigen.
Die Geräte müssen danach gleichfalls neu gestartet werden, damit sie das Plugin im Menü anzeigen. Anschließend im Browser in den LMS-Einstellungen unter Erweitert > Spotty Spotify für Squeezebox anhand der dort angezeigten Anleitung die einzelnen Benutzerkonten hinzufügen. Man braucht zum Hinzufügen ein Gerät, auf dem Spotify läuft, also entweder euren Rechner mit Spotify oder ein Smartphone mit Spotify-App. Man kann mehrere Konten hinzufügen.
Das offizielle Spotify-Plugin sowie das Triode-Plugin und das SpotifyFamily-Plugin funktionieren nicht mehr, da Spotify die API libspotify abgeschaltet hat.
AirPlay mit ShairTunes2
Eine Squeezebox lässt sich als AirPlay-Gerät verwenden, um Audioinhalte vom iPhone/iPad auf die Squeezebox streamen zu können. Dafür wird das ShairTunes2-Plugin benötigt. Das Plugin taucht bei hinreichend aktuellen LMS-Versionen von selbst unter den Plugins von Drittanbietern auf. Falls nicht, findet man auf der Homepage des Plugins eine Anleitung zum Hinzufügen des Plugins.
Vor Installation des Plugins muss das Paket libcrypt-openssl-rsa-perl installiert werden, ansonsten wird beim Aufruf der Einstellungsseite des Plugins nur ein 404-Fehler angezeigt.
Lasst euch nicht davon irritieren, dass gelegentlich „Windows“ in der Plugin-Bezeichnung auftaucht. Der Hintergrund ist, dass ältere Plugin-Versionen nicht unter Windows lauffähig waren; daher wird in neueren Versionen explizit darauf hingewiesen.
Konfiguration eines Squeezebox Receivers mit net::udap
Der Squeezebox Receiver ist ein kleines Kästchen, das außer einer Status-LED und einem Reset-Knopf keinerlei Bedienelemente besitzt. Es ist zum Anschluss an eine Stereo-Anlage und zur Bedienung über LMS-Webinterface, Controller-App oder der Fernbedienung Squeezebox Remote gedacht. Receiver und Remote wurden im Paket als „Squeezebox Duet” vertrieben.
Die Netzwerkkonfiguration inkl. der IP des LMS, mit dem sich der Receiver verbinden soll, erfolgt unter Linux über ein Perl-Programm namens net::udap. Dieses Tool wird seit Jahren nicht mehr gewartet, erfüllt aber noch immer seinen Zweck. Das Tool wurde ursprünglich auf http://projects.robinbowes.com/Net-UDAP/trac gehostet, wo man noch immer die Anleitungen findet. Der Code an sich ist mittlerweile auf https://github.com/robinbowes/net-udap umgezogen.
Zur Konfiguration muss der Receiver per Ethernet-Kabel mit dem Netzwerk verbunden werden.
Das seit Jahren ungewartete Tool funktioniert mitunter nicht mehr zuverlässig unter aktuellen Debian-Versionen. Lösung: man richtet sich eine virtuelle Maschine mit Debian Lenny ein. Eine Konsole reicht, eine grafische Oberfläche wird nicht benötigt.
Firmware des UE Smart Radios
Das UE Smart Radio ist technisch weitgehend gleich mit dem Squeezebox Radio, verwendet aber eine andere Firmware. Ursprünglich bot Logitech nur an, die Firmware auf dem Squeezebox Radio durch die des UE Smart Radios zu ersetzen, was jedoch zum Verlust vieler Funktionen führte. Seit 2013 kann das UE Smart Radio auch mit der Firmware dies Squeezebox Radios versehen werden.
UPnP/DLNA
Eine Squeezebox kann sich nicht mit einem DLNA-Server als Medienquelle verbinden.
Der LMS kann die ihm bekannten Medien via DLNA im Netz bereitstellen, wenn man das Plugin UPnP/DLNA Media Interface aktiviert. Neben Musik kann der LMS Bilder und Videos, mit denen die Squeezeboxen nichts anfangen können, per DLNA anbieten.
Slim Devices/Slimserver
Die Squeezeboxen wurden ursprünglich von einem Unternehmen namens „Slim Devices, Inc.” entwickelt, das von Logitech aufgekauft wurde. Daher hat sich die Domain slimdevices.com erhalten. Der LMS wird in alten Texten gelegentlich als „Slimserver“ oder „Squeezeserver“ bezeichnet.