CitroenDsVier
Lt. Commander
- Registriert
- Dez. 2013
- Beiträge
- 1.896
Hi zusammen,
ich würde gerne über meine NAS (Synology DS716+II, DSM 6.1) über Spotify Connect Musik streamen können. Der Grund, die NAS dafür zu verwenden, ist die aktuelle Position der NAS im Haus, und dass ich aktuell keinen Raspberry Pi habe, den ich dorthin entbehren könnte.
Grundsätzlich ist der Spotify-Teil relativ schnell umsetzbar, in einer Ubuntu-VM habe ich das Ganze schon zum Laufen bekommen. Das entsprechende Stück Software nennt sich "spotifyd" und ist für Linux erhältlich. Leider ist meine NAS nativ nicht in der Lage, VMs zu hosten, weshalb ich hierfür auf Docker ausweichen muss/möchte.
Dafür habe ich bereits ein entsprechendes Docker Image gefunden und für meine Ansprüche leicht verändert, der Spotify-Teil funktioniert auch (ich kann in Spotify auf meinem Rechner / Handy / ... den neuen Spotify Connect Server finden und Musik darauf abspielen).
Probleme habe ich aber im zweiten Teil des Vorhabens: Der Ton muss aus dem Docker Container über das Synology-Hostsystem in eine USB-Soundkarte kommen. Langfristig plane ich, eine günstige USB-Soundkarte dafür zu besorgen. Aktuell habe ich zwei USB-Soundkarten hier, die ich erst einmal für einen "proof of concept" verwenden möchte:
- Focusrite Scarlett 2i4 2nd Gen
- Plantronics Blackwire 325.1 USB-Headset
Beide Karten werden vom Hostsystem als USB-Geräte erkannt ("lsusb" listet sie auf).
Das Gastsystem (Docker Container) erkennt sie ebenfalls, aber nicht als Soundkarten (Details weiter unten). An dieser Stelle bin ich davon ausgegangen, dass das für spotifyd verwendete Base-Image eventuell zu minimalistisch ist und daher keine generischen Soundkarten-Treiber (?) dabei haben könnte, weshalb mein nächstes Ziel war, aus irgendeinem Docker-Container irgendeinen Ton auf irgendeiner der an der NAS angeschlossenen Soundkarten zu produzieren.
Dafür bin ich dann vorerst auf Ubuntu 20.04 gewechselt. Den Docker Container hierfür habe ich mit dem Befehl
gestartet. Das Passthrough vom USB-Gerät scheint auch zu funktionieren, zumindest findet auch Ubuntu im Docker Container über "lsusb" die Soundkarte. Ein "aplay -l", um die ALSA-Soundkarten aufzulisten, liefert aber "no soundcards found...", und hier ist die Baustelle: Was muss ich tun, damit eine meiner beiden Soundkarten im Ubuntu-Docker-Image auch als Soundkarte erkannt wird und einen Ton produziert?
(Was mich aktuell noch etwas verwirrt, ist, dass auch ohne das "--device=..."-Argument anscheinend beide USB-devices an den Gast durchgereicht werden. Zumindest kann ich das Argument komplett weglassen und bekomme mittels "lsusb" trotzdem beide Geräte aufgelistet. Kann mir das Jmd erklären?)
MfG, V40
ich würde gerne über meine NAS (Synology DS716+II, DSM 6.1) über Spotify Connect Musik streamen können. Der Grund, die NAS dafür zu verwenden, ist die aktuelle Position der NAS im Haus, und dass ich aktuell keinen Raspberry Pi habe, den ich dorthin entbehren könnte.
Grundsätzlich ist der Spotify-Teil relativ schnell umsetzbar, in einer Ubuntu-VM habe ich das Ganze schon zum Laufen bekommen. Das entsprechende Stück Software nennt sich "spotifyd" und ist für Linux erhältlich. Leider ist meine NAS nativ nicht in der Lage, VMs zu hosten, weshalb ich hierfür auf Docker ausweichen muss/möchte.
Dafür habe ich bereits ein entsprechendes Docker Image gefunden und für meine Ansprüche leicht verändert, der Spotify-Teil funktioniert auch (ich kann in Spotify auf meinem Rechner / Handy / ... den neuen Spotify Connect Server finden und Musik darauf abspielen).
Probleme habe ich aber im zweiten Teil des Vorhabens: Der Ton muss aus dem Docker Container über das Synology-Hostsystem in eine USB-Soundkarte kommen. Langfristig plane ich, eine günstige USB-Soundkarte dafür zu besorgen. Aktuell habe ich zwei USB-Soundkarten hier, die ich erst einmal für einen "proof of concept" verwenden möchte:
- Focusrite Scarlett 2i4 2nd Gen
- Plantronics Blackwire 325.1 USB-Headset
Beide Karten werden vom Hostsystem als USB-Geräte erkannt ("lsusb" listet sie auf).
Das Gastsystem (Docker Container) erkennt sie ebenfalls, aber nicht als Soundkarten (Details weiter unten). An dieser Stelle bin ich davon ausgegangen, dass das für spotifyd verwendete Base-Image eventuell zu minimalistisch ist und daher keine generischen Soundkarten-Treiber (?) dabei haben könnte, weshalb mein nächstes Ziel war, aus irgendeinem Docker-Container irgendeinen Ton auf irgendeiner der an der NAS angeschlossenen Soundkarten zu produzieren.
Dafür bin ich dann vorerst auf Ubuntu 20.04 gewechselt. Den Docker Container hierfür habe ich mit dem Befehl
Code:
docker run -t -i --device=/dev/bus/usb/003/003 ubuntu:20.04 bash
(Was mich aktuell noch etwas verwirrt, ist, dass auch ohne das "--device=..."-Argument anscheinend beide USB-devices an den Gast durchgereicht werden. Zumindest kann ich das Argument komplett weglassen und bekomme mittels "lsusb" trotzdem beide Geräte aufgelistet. Kann mir das Jmd erklären?)
MfG, V40