gst-plugins-spotify
This is a GStreamer plugin to read content from Spotify.
Make sure that your application follows Spotify's design guidelines to respect their legal/licensing restrictions.
Spotify Credentials
This plugin requires a Spotify Premium account. If your account is linked with Facebook, you'll need to setup a device username and password.
Those username and password are then set using the username and password properties.
You may also want to cache credentials and downloaded files, see the cache- properties on the element.
spotifyaudiosrc
The spotifyaudiosrc element can be used to play a song from Spotify using its Spotify URI.
gst-launch-1.0 spotifyaudiosrc username=$USERNAME password=$PASSWORD track=spotify:track:3i3P1mGpV9eRlfKccjDjwi ! oggdemux ! vorbisdec ! audioconvert ! autoaudiosink
The element also implements an URI handler which accepts credentials and cache settings as URI parameters:
gst-launch-1.0 playbin3 uri=spotify:track:3i3P1mGpV9eRlfKccjDjwi?username=$USERNAME\&password=$PASSWORD\&cache-credentials=cache\&cache-files=cache