[WIP] XBMC + Spotify = True (an XBMC implementation that uses Spotify's official API) - Printable Version
+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Announcements, Info, and General Discussion (/forumdisplay.php?fid=85)
+--- Forum: XBMC General Discussion (/forumdisplay.php?fid=6)
+--- Thread: [WIP] XBMC + Spotify = True (an XBMC implementation that uses Spotify's official API) (/showthread.php?tid=67012)
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
- momoski - 2010-11-14 22:13
Just to make sure I will do everything correct tomorrow. I had the following folder structure. I think I am making some mistakes in putting everything in the correct place:
1. I have a temp directory inside my home folder.
2. In the temp folder I have downloaded the source code for xbmc creating a folder temp/trunk/xbmc
3. In the temp folder I also downloaded libspotify. From the folder home/temp/libspotify* I run:
4. Created a folder in temp called Azekekesfiles. In that folder I downloaded azekeke's files.
5. Copied spotyxbmc.diff from home/temp/azekekesfiles to the home/temp/trunk folder, the xbmc/spot* files to trunk/xbmc/ and the core/paplayer files to the corresponding folder in trunk.xbmc.
6. After installing libspotify I have a file in /usr/local/include/spotify/api.h where i replaced byte by s_byte.
7. For applying the patch I ran the command from the trunk folder. Instead of ./spotyxbmc.diff I used spotifyxbmc.diff (without ./). I get a nice list of the files that are patched.
What I am worried about is that I have installed the libspotify in the wrong place. Is the above the correct way? Again thanks a lot.
- momoski - 2010-11-15 00:58
First of all, my apologies for not writing the name Akezeke correctly.
I just saw your update readme file and the update .diff file. It is funny, I am still compiling after I made two alterations:
1. api.h could not be found during compiling, so I copied it over from the folder where it was installed and put it in the folder where it is expected during compiling. I guess that wont be necessary anymore with your instructions about api.h.
2. The member RemoveAlbum was not declared in MusicDatabase.h. I just saw in your new diff file that this was added. I have added it myself in the meantime.
So like I said, I am still compiling and keep my fingers crossed. Update in a few minutes I hope.
- momoski - 2010-11-15 15:37
Still no luck. I get the following error from the log file.
Quote:14:32:57 T:3078584192 M:1419116544 NOTICE: Spotifylog: clean
There is also another odd thing. When shutting xbmc down on my ASRock, only XBMC get restarted instead of the machine shutting down, what used to be the case before the update. But I guess that is an issue I should bring to the XBMC team.
- Puffytroll - 2010-11-15 16:26
It looks like you are using the wrong library version ? Try another..
- Puffytroll - 2010-11-15 17:04
Hi. I am getting an error message when im patching:
Any one know how to fix that ?
And when i build this happends:
- akezeke - 2010-11-15 20:24
Seems like a problem with the version as Puffytroll suggests, did you get the same result with the other versions. Allso I have noticed that libspotify sometimes gives you the wrong error code, make sure that you use correct username password and that you actualy has a premium account.
Ignore first error message, the patch applies fine anyway.
The second error is given because the compiler cant find the libspotify files, make sure you have installed libspotify in a place where the system knows about them, try for example with make install prefix=/usr/local or find out where the libs in your system are stored and install libspotify there.
- mylssi - 2010-11-15 21:40
The 0.0.3 libspotify seems to be segfaulting if there are local files in a playlist. I got it to compile with 0.0.6 API changes but ended up with a xbmc binary that crashes at the startup. I need to take a better look at the code when I have the time.
- momoski - 2010-11-15 21:53
Compiling went fine, but I can't start up xbmc.
After the first splash screen it stays black and flickers a bit. I can't find a log that is created at that time, so I have a hard time to find out what went wrong. I am thinking about reinstalling the whole live cd again. Unfortunately I lose the wifi and the remote support I had to configure afterwards.
Does anyone know where to find info about startup failures in log files. In the meantime I will start recompiling XBMC without libspotify to see if I can get XBMC to work again. Then at least I have a fallback.
@mylssi: What do you mean by segfaulting?
- mylssi - 2010-11-15 22:10
momoski Wrote:@mylssi: What do you mean by segfaulting?
Basically crashing. Accessing an invalid memory address to be exact.
- momoski - 2010-11-16 00:31
I got it working too. Thank you very much Akezeke, Puffytroll and mylssi. I guess I just had a mess on my machine. What I did was getting rid of all libspotify references. Then got the source code again for xbmc. Compiled it and installed it, knowing I could always go back to make install in that folder. XBMC compiled and got installed and working correctly. I then copied the trunk folder to a new folder, installed libspotify and applied all the patches as explained by akezeke on github. Make and then install.
Anyways, it is working now with libspotify 0.0.3. But I can't get Playlists to work. As soon as I hit that XBMC crashes and gets reinitialised. Top lists etc are working fine. I guess this has to do with what mylssi has written in the post above.
@mylssi: you said you would try it with 0.0.6. Could you and Akezeke please keep us updated with the progress on that. If I can test or do anything else, please let me know.
Is it sure that libspotify 0.0.3 is the cause of the crash with playlists or is it something in the Akezeke's files.
For now I am glad it's working and thanks again, compiling on asrock300 is no fun thing to do