Open source client of Spotify Connect closed library developed in Java
I decided to make a Java version because i needed the player to run without any privileged or any additional installation.
Why: I have to run on the same Raspberry that my media center, in this case Kodi, that i run over Openelec. As Openelec is built only to run Kodi (and that what makes it so good) and i didn't wanna mess up everything rebuilding the whole system to allow to install other packages ruining all. So I decided to develop a java version which fit perfect the requirement (No privileged, No installation, No additional libs).
1 - Download Java, link here
2 - Get apropriate version of spotify lib, you can find all versions in this github, if you dont know which one, its problably this one
3 - Get your spotify key, here, download the binary version
4 - Get SCPlayer jar, here
4 - Put all on the same folder
5 - Run using the command /path/to/java -jar SCPlayer.jar
6 - From a browser access: http://IP:4000 and login with your login clicking on the right top conner
Java options -D<option>=<value>
playerName - Set the player name, will appears on all your connect devices (Default will be SCPlayer)
username - Set username
password - Set password
standalone - Runs wihtout the web version (true/false)
debug - Set debug level - 0 > WARN, 1 > INFO, 2 > DEBUG, 3 > TRACE
appKey - Location of your spotify_appkey.key
If you connect using a facebook account, scplayer will not show up among the devices in the Spotify app. What you need to do is apply for a device password and use that to sign in instead.
If you are running on Openelec like I am, you have to run this command to enable alsa drivers
from ssh type "echo snd_bcm2835 >> /storage/.config/modules-load.d/audio.conf"
and reboot
If you are running on OSMC you have to run this command to enable alsa drivers
from ssh type "sudo modprobe snd_bcm2835"
no need to reboot
Using this code to connect to Spotify's API is probably forbidden by them, and might result in you application key getting banned. Use at you own risk