Spotify: Unterschied zwischen den Versionen

Aus CodicaTipps
Zur Navigation springen Zur Suche springen
Zeile 43: Zeile 43:
  
 
Siehe https://community.spotify.com/t5/Desktop-Linux/Linux-Cache-Location-not-being-respected/m-p/1266695#M4113
 
Siehe https://community.spotify.com/t5/Desktop-Linux/Linux-Cache-Location-not-being-respected/m-p/1266695#M4113
 +
 +
== Spotify Connect Receivers ==
 +
 +
=== spotifyd ===
 +
 +
=== librespot ===
 +
 +
[https://github.com/librespot-org Librespot] ist eine Bibliothek und ein Kommandozeilenprogramm, mit dem man einen headless Spotify Connect - Receiver starten kann. Diesen kann man mit den offiziellen Spotify-Apps steuern, wenn man einen Spotify Premium-Account hat.
 +
 +
Kompiliert wird librespot z.B. so:
 +
 +
  cargo build --release --features "alsa-backend,pulseaudio-backend"
 +
 +
Dazu müssen die Entwicklungstools für die Programmiersprache [[Rust]] installiert sein.
 +
 +
Gestartet wird librespot z.B. so:
 +
 +
  librespot --name librespotOnMyHtpc --cache /media/data/tmp/cache --device-type tv --backend pulseaudio --initial-volume 20
 +
  
 
== Installation für Kodi ==
 
== Installation für Kodi ==

Version vom 29. März 2020, 06:11 Uhr

Installation unter Linux

Siehe https://www.spotify.com/de/download/linux/

Betreiben auf einem monitorlosen Server

Halboffizieller Spotify-Client mit XVFB

Wenn man spotify headless (ohne graphische Anzeige, gesteuert von einer anderen Spotify-Instanz) nutzen will, bietet sich Folgendes an:

  • Installation von Spotify auf dem Remote-Rechner
  • Einwahl mit ssh -X remote-rechner (mit -X zur Weiterleitung des X-Desktops auf den lokalen Desktop)
  • Auf dem Remote-Rechner
 sudo aptitude install xvfb
 spotify
  • Dann wird auf dem lokalen X-Server der Login-Schirm von spotify angezeigt; hier Anmeldedaten angeben.
  • Einwahl mit ssh remote-rechner (dieses Mal ohne -X)
  • Starten von Spotify headless:
 xvfb-run spotify

Der offizielle Client hat eine komfortable GUI. Wenn man ihn aber ohne Monitor betreibt, braucht man diese nicht. Teilweise klappt es bei mehreren Geräten auch [ https://community.spotify.com/t5/Desktop-Linux/Spotify-for-Linux-My-device-is-not-shown-as-available-because-it/m-p/4830830 nicht mit der korrekten Vergabe der Geräte-ID, so dass nicht alle gleichzeitig laufenden offiziellen Clients angesprochen werden können.] Dann ist der im Nachfolgenden beschriebene Open Source-Client spotifyd die bessere Alternative.


Alternativer Client für Linux - nur Soundausgabe

Der Spotifyd ist ein Open Source-Client, der als so genannter Daemon auf einem Linux-System im Hintergrund werkelt.

Konfiguriert wird er über eine übliche Linux-Konfigurationsdatei.

Betreiben mit einem HiDPI-Display

Auf einem hochauflösenden Display kann man die Anzeige mit der Kommandozeilenoption --force-device-scale-factor=1.8 skalieren. 1.8 muss man ggf. an die gewünschte Auflösung anpassen.[1]

Begrenzen der Cache-Größe

Siehe

Verschieben des Cache unter Linux

Die Einstellung des Speicherorts scheint beim Linux-Client nicht zu funktionieren. Abhilfe schafft ein symbolischer Link auf den Zielort.

Siehe https://community.spotify.com/t5/Desktop-Linux/Linux-Cache-Location-not-being-respected/m-p/1266695#M4113

Spotify Connect Receivers

spotifyd

librespot

Librespot ist eine Bibliothek und ein Kommandozeilenprogramm, mit dem man einen headless Spotify Connect - Receiver starten kann. Diesen kann man mit den offiziellen Spotify-Apps steuern, wenn man einen Spotify Premium-Account hat.

Kompiliert wird librespot z.B. so:

 cargo build --release --features "alsa-backend,pulseaudio-backend"

Dazu müssen die Entwicklungstools für die Programmiersprache Rust installiert sein.

Gestartet wird librespot z.B. so:

 librespot --name librespotOnMyHtpc --cache /media/data/tmp/cache --device-type tv --backend pulseaudio --initial-volume 20


Installation für Kodi

Siehe XBMC#Spotify

Spotify API

Spotify bietet eine umfangreiche API an. Um sie zu nutzen, muss man

Quick start

Für die Authorisierung bietet sich als Einsteigervariante der Implicit Grant Flow an.

Der implicit grant flow kann im Browser nachgestellt werden. In die Adresszeile wird zunächst Folgendes eingegeben:

 https://accounts.spotify.com/authorize?client_id=CLIENTID&response_type=token&redirect_uri=https%3A%2F%2Fpia2016.de%2Fcodicatipps%2F&scope=user-read-playback-state&state=helloworld

Man wird auf die angegebene redirect_uri weitergeleitet. In der Adresszeile gibt es einen Teil der mit access_token= anfängt. Der so angegebene Token (bis zum kaufmännischen '&' ) ist der Bearer-Token, mit dem man dann Abfragen starten kann.

Abfragen des Usernamens:

 curl -v -H "Authorization: Bearer $TOKEN" https://api.spotify.com/v1/me

Abfragen der vorhandenen Geräte:[2]

 curl -v -H "Authorization: Bearer $TOKEN" https://api.spotify.com/v1/me/player/devices

Webserver-App

Siehe