Kodi Community Forum
[WIP] XBMC + Spotify = True (an XBMC implementation that uses Spotify's official API) - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Discussions (https://forum.kodi.tv/forumdisplay.php?fid=222)
+--- Forum: Kodi related discussions (https://forum.kodi.tv/forumdisplay.php?fid=6)
+--- Thread: [WIP] XBMC + Spotify = True (an XBMC implementation that uses Spotify's official API) (/showthread.php?tid=67012)



- Flanhare - 2011-09-12

alex84 Wrote:Finaly got it working Sweet...

The steeps taken to get this running on an xbmclive install.

1.


2.


3.
Code:
cd /home/xbmc
Code:
wget -nc -q https://raw.github.com/Drol/XBMCStuff/master/sxgb.sh
Code:
chmod +x sxgb.sh
Code:
./sxgb.sh upgrade

The install will start and take around 5-15min or so, depending on pc speed. I got some warnings first of that the appkey.h was not found, and later on some missing librarys. This will get corrected soon.

When the building was done i did not have spotixbmc installed and i follow IAmNotAUser's post adding missing librarys.

Code:
apt-get install libyajl-dev
Code:
apt-get update
Code:
apt-get install libplist-dev python-support python-dev ccache libyajl-dev libvdpau-dev debhelper zip git-core make g++ gcc gawk pmount libtool yasm nasm

automake cmake gperf gettext unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libfribidi-dev liblzo2-dev libfreetype6-dev

libsqlite3-dev libogg-dev libasound-dev python-sqlite libglew-dev libcurl3 libcurl4-openssl-dev x11proto-xinerama-dev libxinerama-dev libxrandr-dev libxrender-

dev libmad0-dev libogg-dev libvorbisenc2 libsmbclient-dev libmysqlclient-dev libpcre3-dev libdbus-1-dev libhal-dev libhal-storage-dev libjasper-dev

libfontconfig-dev libbz2-dev libboost-dev libfaac-dev libenca-dev libxt-dev libxtst-dev libxmu-dev libpng-dev libjpeg-dev libpulse-dev mesa-utils libcdio-dev

libsamplerate-dev libmms-dev libmpeg3-dev libfaad-dev libflac-dev libiso9660-dev libass-dev libssl-dev fp-compiler gdc libwavpack-dev libmpeg2-4-dev

libmicrohttpd-dev libmodplug-dev libboost-thread-dev -y -q

And now this will take some time....
Code:
./sxgb.sh refresh

The installation was refreshed took around 30min after this i could start upp spotifxbmc Big Grin

Thanks to Flanhare's script and IAmNotAUser 's post.
I have written the steps in the order i done them and that worked for me. If you want to do the steps in another order it's up to you.

And also a big thanks to Akeeze, this is the best thing happening to xbmc since sliced bread Nod

Best regards.
Nice it is working :-) But I still don't get it, all those libs is already in the script. Or am I missing something? *shrugs* :-)


- tsint - 2011-09-12

alex84 Wrote:And also a big thanks to Akeeze, this is the best thing happening to xbmc since sliced bread Nod

+1

I play spotify in xbmc several hours per day, love it! Cool


- idlerobbo - 2011-09-13

will this work on ATV2?


- KRKA01 - 2011-09-13

@Gr8rtek

Thanks for the guide. Used it as a reference when i compiled and configured SpotifyXBMC on Windows.

I had one problem though, you also need the "Microsoft DirectX SDK" dated August 2009 or later to be able to compile. More information here:
http://wiki.xbmc.org/index.php?title=XBMC_for_Windows

Also, according to the "HOW-TO compile XBMC for Windows from source code" guide,
you can also skip step 14 -16 and 25 -26 if you only want to build a Setup installer
and you do not plan to Running/Debugging XBMC from Visual C++ Express 2010.


- coendeurloo - 2011-09-13

Flanhare Wrote:Have you ran "apt-get update" before? Otherwise google how to install.

Yes I have done that.

Code:
apt-get install libyajl-dev

Still can't be found.

What should I google? Shouldn't there be an extra source in my sources list or something so it can find it?

Edit: got it! For everyone who has the same error (which should be every default XBMCLive user <--- my case...?) run this:

Code:
sudo add-apt-repository ppa:team-iquik/xbmc-svn

Then do an apt-get update and try it again.


- coendeurloo - 2011-09-13

Well, even though I managed to install the missing libyajl-dev, I still can't find Spotify in my music addons. These are the last lines in Putty after running the missing libraries from IAmNotAUser:

Image

What could be wrong?


- Gr8rtek - 2011-09-14

kooolkat357 Wrote:@Gr8rtek

Thanks allot for your nice Windows compiling/installation guide Smile

Helped me out allot, got spotifyXbmc 2 work @ first try!

Edit: Spotify works but every other file online & offline will not play! Any advice?
@KoolKat357

Glad the guide was helpful. Not sure why local files won't play. I would recommend turning on debugging and see if the log files turn up any information.


- Gr8rtek - 2011-09-14

KRKA01 Wrote:@Gr8rtek

Thanks for the guide. Used it as a reference when i compiled and configured SpotifyXBMC on Windows.

I had one problem though, you also need the "Microsoft DirectX SDK" dated August 2009 or later to be able to compile. More information here:
http://wiki.xbmc.org/index.php?title=XBMC_for_Windows

Also, according to the "HOW-TO compile XBMC for Windows from source code" guide,
you can also skip step 14 -16 and 25 -26 if you only want to build a Setup installer
and you do not plan to Running/Debugging XBMC from Visual C++ Express 2010.
@KRKA01

Thanks for catching this. I will see if I can edit the original post with these new details. As I stated in the original post, I'm not a developer and am completely new to compiling, and as such I left the debug steps in tact from the thread on "How to Compile XBMC for Windows". I appreciate the feedback!


- Gr8rtek - 2011-09-14

@MDHog

I have lots of thoughts, but not sure I can repost any of them here Wink

First guess (and this is a guess) would be that something failed prior to Step 15. As KRKA01 pointed out, my guide failed to include the DirectX SDK, which would be necessary if you are building a Release (DirectX) version. I don't know if this will help, but make sure you are running the latest Visual C++ version, latest .NET version with patches and try again. Not sure if any developers can chime in and provide insight as to where to look for additional error log information or not.

Hope this helps, and best of luck!


- MDHog - 2011-09-15

Gr8rtek Wrote:@MDHog

I have lots of thoughts, but not sure I can repost any of them here Wink

First guess (and this is a guess) would be that something failed prior to Step 15. As KRKA01 pointed out, my guide failed to include the DirectX SDK, which would be necessary if you are building a Release (DirectX) version. I don't know if this will help, but make sure you are running the latest Visual C++ version, latest .NET version with patches and try again. Not sure if any developers can chime in and provide insight as to where to look for additional error log information or not.

Hope this helps, and best of luck!

It was SDK and skipping steps 14-16 (dont know which made the difference). Got it working now. Great to finally have spotify working on XBMC/Windows 7. Thanks to all for the help.


- rich710 - 2011-09-15

I have exactly the same errors on my Ubuntu installation Sad
Don't know why, followed the guides..

coendeurloo Wrote:Well, even though I managed to install the missing libyajl-dev, I still can't find Spotify in my music addons. These are the last lines in Putty after running the missing libraries from IAmNotAUser:

Image

What could be wrong?



- Thorn321 - 2011-09-16

akezeke Wrote:Hi,

I have not tried the night skin, will try and see what might couse that behavior.

Edit:
Tried it right now, and it worked for me, are you sure you are running the latest version of night (the pre-eden)?

Is it crashing when you are playing a spotify song and starts another? Can you please create an issue report at the github repo and describe a little further the circumstances when a crash happens and also provide the last bit of the terminal output?
Sorry for the late reply.
I bought a new HTPC and tried it again yesterday. The skin problems are gone, but i have random crashes while listening music because of floating point exceptions. Since everything is beta (eden, skin,...), i don't know if your modifications are the reason. Any idea how i could test where the exceptions are raised?

edit:
i just saw that all crashlogs ends with a "CGUIMediaWindow::GetDirectory(return) failed".
Code:
00:28:34 T:14317376   DEBUG:   ParentPath = [/home/chris/Musik/]
00:28:34 T:14317376   DEBUG: RetrieveMusicInfo() took 0 msec
00:28:34 T:2961177456   DEBUG: Thread Background Loader start, auto delete: 0
00:28:35 T:1610722160   DEBUG: Previous line repeats 4 times.
00:28:35 T:1610722160   DEBUG: Thread Background Loader 1610722160 terminating
00:28:35 T:1627507568   DEBUG: Thread Background Loader 1627507568 terminating
00:28:35 T:1593936752   DEBUG: Thread Background Loader 1593936752 terminating
00:28:35 T:2961177456   DEBUG: Thread Background Loader 2961177456 terminating
00:28:35 T:1575893872   DEBUG: Thread Background Loader 1575893872 terminating
00:28:35 T:14317376   DEBUG: SDLKeyboard: scancode: 74, sym: 0112, unicode: 0000, modifier: 0
00:28:35 T:14317376   DEBUG: OnKey: down (f081) pressed, action is Down
00:28:38 T:14317376   DEBUG: SDLKeyboard: scancode: 09, sym: 001b, unicode: 001b, modifier: 0
00:28:38 T:14317376   DEBUG: OnKey: escape (f01b) pressed, action is PreviousMenu
00:28:38 T:14317376   DEBUG: CGUIWindowManager::PreviousWindow: Deactivate
00:28:39 T:14317376   DEBUG: ------ Window Deinit (MyMusicSongs.xml) ------
00:28:39 T:14317376   DEBUG: CGUIWindowManager::PreviousWindow: Activate new
00:28:39 T:14317376   DEBUG: ------ Window Init (Home.xml) ------
00:28:39 T:14317376    INFO: Loading skin file: Home.xml
00:28:39 T:14317376   DEBUG: Load Home.xml: 119.50ms
00:28:39 T:14317376   DEBUG: Alloc resources: 218.52ms (123.49 ms skin load)
00:28:40 T:14317376   DEBUG: ExecuteXBMCAction : Translating XBMC.RunScript(script.randomitems,limit=10&unplayed=True)
00:28:40 T:14317376   DEBUG: ExecuteXBMCAction : To XBMC.RunScript(script.randomitems,limit=10&unplayed=True)
00:28:40 T:14317376    INFO: initializing python engine.
00:28:40 T:2732587888   DEBUG: DoWork - took 193 ms to load special://skin/backgrounds/music.jpg
00:28:40 T:14317376   DEBUG: new python thread created. id=17
00:28:40 T:1567501168   DEBUG: Thread XBPyThread start, auto delete: 0
00:28:40 T:1567501168   DEBUG: Python thread: start processing
00:28:40 T:14317376   DEBUG: ExecuteXBMCAction : Translating SetFocus(300)
00:28:40 T:14317376   DEBUG: ExecuteXBMCAction : To SetFocus(300)
00:28:40 T:1567501168  NOTICE: -->Python Interpreter Initialized<--
00:28:40 T:1567501168   DEBUG: Process - The source file to load is /home/chris/.xbmc/addons/script.randomitems/RandomItems.py
00:28:40 T:1567501168   DEBUG: Process - Setting the Python path to /home/chris/.xbmc/addons/script.randomitems:/home/chris/.xbmc/addons/script.module.simplejson/lib:/usr/local/share/xbmc/addons/script.module.pil/lib:/usr/local/share/xbmc/addons/script.module.pysqlite/lib:/home/chris/.xbmc/addons/script.module.beautifulsoup/lib:/usr/lib/python2.7:/usr/lib/python2.7/plat-linux2:/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/lib-old:/usr/lib/python2.7/lib-dynload:/usr/local/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages/PIL:/usr/lib/pymodules/python2.7/gtk-2.0:/usr/lib/python2.7/dist-packages/gst-0.10:/usr/lib/python2.7/dist-packages/gtk-2.0:/usr/lib/pymodules/python2.7:/usr/lib/pymodules/python2.7/ubuntuone-client:/usr/lib/pymodules/python2.7/ubuntuone-control-panel:/usr/lib/pymodules/python2.7/ubuntuone-storage-protocol:
00:28:40 T:1567501168   DEBUG: Process - Entering source directory /home/chris/.xbmc/addons/script.randomitems
00:28:40 T:1567501168   DEBUG: Instantiating addon using automatically obtained id of "script.randomitems" dependent on version 2.0 of the xbmc.python api
00:28:40 T:1567501168   DEBUG: RunQuery took 17 ms for 123 items query: select * from movieview
00:28:40 T:1567501168   DEBUG: RunQuery took 1 ms for 0 items query: select * from episodeview
00:28:40 T:1567501168   DEBUG: GetAlbumsByWhere query: select * from albumview where albumview.strAlbum <> ''
00:28:40 T:1567501168   DEBUG: GetAlbumsByWhere - query took 0 ms
00:28:40 T:1567501168   DEBUG: GetSongsByWhere query = select * from songview
00:28:40 T:1567501168    INFO: Scriptresult: Success
00:28:40 T:1567501168    INFO: Python script stopped
00:28:40 T:1567501168   DEBUG: Thread XBPyThread 1567501168 terminating
00:28:40 T:14317376   DEBUG: waiting for python thread 17 to stop
00:28:40 T:14317376   DEBUG: python thread 17 destructed
00:28:41 T:1619114864   DEBUG: GetImageHash - unable to stat url
00:28:41 T:14317376   DEBUG: SDLKeyboard: scancode: 24, sym: 000d, unicode: 000d, modifier: 0
00:28:41 T:14317376   DEBUG: OnKey: return (f00d) pressed, action is Select
00:28:41 T:14317376   DEBUG: ExecuteXBMCAction : Translating XBMC.ActivateWindow(MyMusic,return)
00:28:41 T:14317376   DEBUG: ExecuteXBMCAction : To XBMC.ActivateWindow(MyMusic,return)
00:28:41 T:14317376   DEBUG: Activating window ID: 10501
00:28:41 T:14317376   DEBUG: ------ Window Deinit (Home.xml) ------
00:28:41 T:14317376 WARNING: CUtil::GetMatchingSource... no matching source found for [return]
00:28:41 T:14317376   DEBUG: ------ Window Init (MyMusicSongs.xml) ------
00:28:41 T:14317376    INFO: Loading skin file: MyMusicSongs.xml
00:28:41 T:14317376 WARNING: Skin has invalid include: Object_DebugGrid
00:28:41 T:14317376 WARNING: Skin has invalid include: Animation_PosterInfoSlide_Showcase
00:28:41 T:14317376 WARNING: Previous line repeats 2 times.
00:28:41 T:14317376   DEBUG: Load MyMusicSongs.xml: 104.14ms
00:28:41 T:14317376   DEBUG: Alloc resources: 137.31ms (107.61 ms skin load)
00:28:41 T:14317376   DEBUG: CGUIMediaWindow::GetDirectory (return)
00:28:41 T:14317376   DEBUG:   ParentPath = [return/]
00:28:41 T:14317376   ERROR: GetDirectory - Error getting return
00:28:41 T:14317376   ERROR: CGUIMediaWindow::GetDirectory(return) failed
00:28:42 T:2732587888   DEBUG: DoWork - took 190 ms to load /home/chris/.xbmc/addons/skin.night/media/backgrounds/music.jpg



- coendeurloo - 2011-09-21

Great. Now when I start XBMC it says it can't load "recentlyadded.py" and I can't update xbmc anymore, it says i should do 'apt-get -f install' to fix stuff but it doesn't... so basically my xbmc is f*cked by just using this guide.

Nice.


- alex84 - 2011-09-22

coendeurloo Wrote:Great. Now when I start XBMC it says it can't load "recentlyadded.py" and I can't update xbmc anymore, it says i should do 'apt-get -f install' to fix stuff but it doesn't... so basically my xbmc is f*cked by just using this guide.

Nice.

To install you have to recompile xbmc. If something goes wrong expect problems. I made a full disk backup first, using clonezilla. If something goes wrong i can clone back the whole disk. Just a tip...

Cant say exactly what whent wrong. I installed a fresh xbmclive on linux. Did a full disk clone with clonezilla. Then did the steeps described earlier and it worked right on. Then one more clonezilla image xbmc-spotify image.

Cheers


- coendeurloo - 2011-09-22

Thanks for the reply. Recompiling means...rebuilding right? I always had the latest svn version of xbmc, why would I recompile it?

Anyway... I have all my movies etc. on an external disk. I'm more worried about my Couchpotato, Sickbeard and Sabnzbd configs...is there a way to backup just those so I can do a total reinstall (or recompile..? what would be better?) of xbmc?