Kodi Community Forum
[RELEASE] Spotimc: Another Spotify music addon - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: Add-on Support (https://forum.kodi.tv/forumdisplay.php?fid=27)
+---- Forum: Music Add-ons (https://forum.kodi.tv/forumdisplay.php?fid=148)
+---- Thread: [RELEASE] Spotimc: Another Spotify music addon (/showthread.php?tid=125147)



RE: [RELEASE] Spotimc: Another Spotify music addon - glenrocks - 2013-08-05

Hi,

Came across Spotimc addon and thought of giving it a try.....got registered as simple user @ spotify....and then baam, realized that whole effort was useless as I have to be premium user.

Am I missing something why this addon is not universal? Must be, right? Could not resist to ask here in the forum as I am too lazy to research the benefits of being premium and depriving simple users use the interface in general!!

Have a good one.

G


RE: [RELEASE] Spotimc: Another Spotify music addon - paavoris - 2013-08-05

(2013-08-05, 06:10)glenrocks Wrote: .....got registered as simple user @ spotify....and then baam, realized that whole effort was useless as I have to be premium user.

Am I missing something why this addon is not universal?

It's quite simple, actually. Wink Main differences are:

Spotify free users

- Can use Spotify with desktop application only (and perhaps with Spotify web player - not sure about that)
- Ads
- No HQ streaming

Spotify Premium users

- Spotify can be used with compatible mobile phones, 3rd party programs (including Spotimc) and other devices with Spotify support
- No ads
- HQ streaming available

It isn't technically possible to use Spotify with 3rd party applications (like Spotimc) without Premium account.


RE: [RELEASE] Spotimc: Another Spotify music addon - Kib - 2013-08-05

This addon logs in to Spotify through the Spotify API (libspotify), which Spotify has only unlocked for premium users.
The API will fail to connect if you try to login with a normal user account.

Free users can only use the desktop application, and as paavor pointed out have to endure ads (forgot about those!) and no HD quality audio.


RE: [RELEASE] Spotimc: Another Spotify music addon - fredphoesh - 2013-08-07

(2013-05-08, 23:26)mazkolain Wrote:
(2013-05-07, 12:59)MarceFX Wrote: Any plans on making this plugin Android friendly?

Thanks!
I've done some basic tests on Android and as said on previous posts, I've managed to start the addon but sadly crashes XBMC after a while. Will resume my efforts on Android once 1.0-final gets released.

Oooo... that would be great! I have just moved from a HTPC with Win8 to Android TV box and was very pleased with the performance/interface improvements, though I tried SpotiMC and saw it was not supported Sad

Cheers
Mark.


RE: [RELEASE] Spotimc: Another Spotify music addon - Marco 7 - 2013-08-09

Hi there !

Two things :
- I am using XBMC 12 on Fedora 19 and the latest version of the plugin crashes XBMC entirely when I remote control SpotiMC (clicking the SpotiMC add-on button in Yatze for Android for example), let me know whether some logs are needed. The behavior is the same with the XBMC official remote.
EDIT : yark ! Just saw that you would work on this, thus only my second point might be relevant Wink

- A feature request : not everyone connects XBMC on a TV, in my case, I use a videoprojector for the movies, TV and al, but to listen to music, I'd prefer not to turn on the projector (saving bulb life time, saving electricity, ...) From my experience with SpotiMC, there is no way to walk through the playlists from XBMC or Yatze remote controls. It would be great to add this or correct me if I am wrong Wink

Beside of this, that's a nice plugin you developed and I'd like to use it more.

Thanks !


RE: [RELEASE] Spotimc: Another Spotify music addon - JesseKlaasse - 2013-08-09

Hi there! I'm using SpotiMC beta4 with XBMC 12 on OpenElec (Zotac AD11 PLUS). I'm experiencing regular random exits of the SpotiMC plugin.

My xbmc log file shows these lines:
Code:
18:54:54 T:140128357947136  NOTICE: 127.0.0.1 - - [09/Aug/2013:18:54:54] "HEAD /track/1lpN3qsugqtMR49xwzHYnt.wav?idx=1 HTTP/1.1" 200 41101244 "" "Spotimc/1.0-beta4 (XBMC/12.2 Git:32b1a5e)"
18:54:54 T:140128357947136  NOTICE: .
18:54:54 T:140128349554432  NOTICE: 127.0.0.1 - - [09/Aug/2013:18:54:54] "GET /track/1lpN3qsugqtMR49xwzHYnt.wav?idx=1 HTTP/1.1" 200 41101244 "" "Spotimc/1.0-beta4 (XBMC/12.2 Git:32b1a5e)"
18:54:54 T:140128349554432  NOTICE: .
18:54:54 T:140128534128384  NOTICE: Thread CFileCache start, auto delete: false
18:54:54 T:140129728444224   ERROR: Init: Error creating demuxer
18:54:54 T:140128488998656  NOTICE: 127.0.0.1 - - [09/Aug/2013:18:54:54] "GET /track/1lpN3qsugqtMR49xwzHYnt.wav?idx=1 HTTP/1.1" 200 41101244 "" "Spotimc/1.0-beta4 (XBMC/12.2 Git:32b1a5e)"
18:54:54 T:140128488998656  NOTICE: .
18:54:54 T:140128534128384  NOTICE: Thread CFileCache start, auto delete: false
18:54:54 T:140129728444224   ERROR: ADPCMCodec: error opening file http://127.0.0.1:8080/track/1lpN3qsugqtMR49xwzHYnt.wav?idx=1|X-Spotify-Token=7990d64e26725375ddb2c2515abfcf7bb62ab0dd&User-Agent=Spotimc%2F1.0-beta4+%28XBMC%2F12.2+Git%3A32b1a5e%29!
18:54:54 T:140128408303360  NOTICE: 127.0.0.1 - - [09/Aug/2013:18:54:54] "GET /track/1lpN3qsugqtMR49xwzHYnt.wav?idx=1 HTTP/1.1" 200 41101244 "" "Spotimc/1.0-beta4 (XBMC/12.2 Git:32b1a5e)"
18:54:54 T:140128408303360  NOTICE: .
18:54:54 T:140128534128384  NOTICE: Thread CFileCache start, auto delete: false
18:54:54 T:140128383125248  NOTICE: 127.0.0.1 - - [09/Aug/2013:18:54:54] "GET /track/1lpN3qsugqtMR49xwzHYnt.wav?idx=1 HTTP/1.1" 200 41101244 "" "Spotimc/1.0-beta4 (XBMC/12.2 Git:32b1a5e)"
18:54:54 T:140128383125248  NOTICE: .
18:54:54 T:140128534128384 WARNING: FillBuffer: curl failed with code 33
18:54:54 T:140128534128384   ERROR: CCurlFile::CReadState::Open, didn't get any data from stream.
18:54:54 T:140128534128384   ERROR: Process, error 115 seeking. seek returned -1
18:54:54 T:140128374732544  NOTICE: 127.0.0.1 - - [09/Aug/2013:18:54:54] "GET /track/1lpN3qsugqtMR49xwzHYnt.wav?idx=1 HTTP/1.1" 200 41101244 "" "Spotimc/1.0-beta4 (XBMC/12.2 Git:32b1a5e)"
18:54:54 T:140128374732544  NOTICE: .
18:54:54 T:140128534128384  NOTICE: Thread CFileCache start, auto delete: false
18:54:54 T:140128399910656  NOTICE: 127.0.0.1 - - [09/Aug/2013:18:54:54] "GET /track/1lpN3qsugqtMR49xwzHYnt.wav?idx=1 HTTP/1.1" 200 41101244 "" "Spotimc/1.0-beta4 (XBMC/12.2 Git:32b1a5e)"
18:54:54 T:140128399910656  NOTICE: .
18:54:54 T:140128534128384 WARNING: FillBuffer: curl failed with code 33
18:54:54 T:140128534128384   ERROR: CCurlFile::CReadState::Open, didn't get any data from stream.
18:54:54 T:140128534128384   ERROR: Process, error 115 seeking. seek returned -1
18:54:54 T:140128399910656   ERROR: [09/Aug/2013:18:54:54]  Traceback (most recent call last):
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 169, in trap
                                                return func(*args, **kwargs)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 261, in next
                                                return self.iter_response.next()
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/httpproxy.py", line 288, in _write_file_content
                                                frame, has_frames = buf.get_frame_wait(frame_num)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 340, in get_frame_wait
                                                return self.get_frame(frame_num)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 311, in get_frame
                                                raise BufferError("Frame number #%d gone, too late my friend." % frame_num)
                                            BufferError: Frame number #0 gone, too late my friend.
18:54:54 T:140128399910656  NOTICE: .
18:54:54 T:140128399910656   ERROR: [09/Aug/2013:18:54:54]  Traceback (most recent call last):
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 193, in trap
                                                self.start_response(s, h, _sys.exc_info())
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 169, in trap
                                                return func(*args, **kwargs)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 261, in next
                                                return self.iter_response.next()
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/httpproxy.py", line 288, in _write_file_content
                                                frame, has_frames = buf.get_frame_wait(frame_num)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 340, in get_frame_wait
                                                return self.get_frame(frame_num)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 311, in get_frame
                                                raise BufferError("Frame number #%d gone, too late my friend." % frame_num)
                                            BufferError: Frame number #0 gone, too late my friend.
18:54:54 T:140128399910656  NOTICE: .
18:54:54 T:140128399910656   ERROR: BufferError('Frame number #0 gone, too late my friend.',)
18:54:54 T:140128399910656  NOTICE: .
18:54:54 T:140128374732544   ERROR: [09/Aug/2013:18:54:54]  Traceback (most recent call last):
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 169, in trap
                                                return func(*args, **kwargs)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 261, in next
                                                return self.iter_response.next()
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/httpproxy.py", line 288, in _write_file_content
                                                frame, has_frames = buf.get_frame_wait(frame_num)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 340, in get_frame_wait
                                                return self.get_frame(frame_num)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 311, in get_frame
                                                raise BufferError("Frame number #%d gone, too late my friend." % frame_num)
                                            BufferError: Frame number #49 gone, too late my friend.
18:54:54 T:140128374732544  NOTICE: .
18:54:54 T:140128374732544   ERROR: [09/Aug/2013:18:54:54]  Traceback (most recent call last):
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 193, in trap
                                                self.start_response(s, h, _sys.exc_info())
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 169, in trap
                                                return func(*args, **kwargs)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 261, in next
                                                return self.iter_response.next()
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/httpproxy.py", line 288, in _write_file_content
                                                frame, has_frames = buf.get_frame_wait(frame_num)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 340, in get_frame_wait
                                                return self.get_frame(frame_num)
                                              File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 311, in get_frame
                                                raise BufferError("Frame number #%d gone, too late my friend." % frame_num)
                                            BufferError: Frame number #49 gone, too late my friend.
18:54:54 T:140128374732544  NOTICE: .
18:54:54 T:140128374732544 ERROR: BufferError('Frame number #49 gone, too late my friend.',)
18:54:54 T:140128374732544 NOTICE: .
18:54:54 T:140128374732544 ERROR: Traceback (most recent call last):
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/wsgiserver/wsgiserver2.py", line 1302, in communicate
req.respond()
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/wsgiserver/wsgiserver2.py", line 831, in respond
self.server.gateway(self).respond()
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/wsgiserver/wsgiserver2.py", line 2117, in respond
for chunk in response:
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 161, in next
return self.trap(self.iter_response.next)
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 193, in trap
self.start_response(s, h, _sys.exc_info())
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 169, in trap
return func(*args, **kwargs)
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/CherryPy.egg/cherrypy/_cpwsgi.py", line 261, in next
return self.iter_response.next()
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/httpproxy.py", line 288, in _write_file_content
frame, has_frames = buf.get_frame_wait(frame_num)
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 340, in get_frame_wait
return self.get_frame(frame_num)
File "/storage/.xbmc/addons/script.audio.spotimc/resources/libs/PyspotifyCtypesProxy.egg/spotifyproxy/audio.py", line 311, in get_frame
raise BufferError("Frame number #%d gone, too late my friend." % frame_num)
BufferError: Frame number #49 gone, too late my friend.
18:54:54 T:140128374732544 NOTICE: .
18:54:54 T:140128534128384 WARNING: FillBuffer: curl failed with code 18
18:54:54 T:140128534128384 WARNING: FillBuffer: Reconnect, (re)try 1
[/code]

Any idea what could be going wrong?
And more important: is this fixable?

It is kind of annoying, and it wasn't happening using SpotiMC on XBMC 11.
Hope it is fixable Smile


RE: [RELEASE] Spotimc: Another Spotify music addon - miniburk - 2013-08-20

Got a solution on my problem, just had to remove and open a port from the router; the 8080
Thought maybe it could help others ...


Regards PB


RE: [RELEASE] Spotimc: Another Spotify music addon - slinuxgeek - 2013-08-22

My skin is 1080p, I tried to edit the files in "script.audio.spotimc/resources/skins/DefaultSkin/720p" and gave all x y and width height according to 1080p, but they don't look good (They look very big), the gui is still drawn in 720p why?

How can I make your addon to draw gui in 1080p resolution instead of 720p?

Thanks for help in advance.


RE: [RELEASE] Spotimc: Another Spotify music addon - slinuxgeek - 2013-08-22

OK I got it, I renamed the 720p folder to 1080i and modified "script.audio.spotimc/default.py" for same and now the skin is in 1080.


RE: [RELEASE] Spotimc: Another Spotify music addon - Respect1815 - 2013-08-22

(2013-07-19, 12:38)e6on Wrote: I am trying to use this addon on Raspberry Pi with XBian 1.0 Beta 1.1. I installed it and when I run it I get login screen. I insert my Spotify credentials and press OK. Then it shows the busy icon fore while and then Raspberry Pi drops to command prompt (black screen with linux login). Is there any chance to get it working on XBian 1.0 Beta 1.1?

I have exactly the same issue and it's driving me crazy. Who can help me out?


RE: [RELEASE] Spotimc: Another Spotify music addon - ehrgeiz - 2013-08-24

really nice work! no problems on win 7 64-bit and xbmc 12... PERFECT! THANKS!


RE: [RELEASE] Spotimc: Another Spotify music addon - angryeye - 2013-08-25

I had disabled the Artist Slideshow plugin to try and fix the stuttering music problem (described earlier, music plays for about 3 second blocks after you have played 2-3 songs).

I then wanted to try to get a debug log as requested by the creator of Artist Slideshow, so I reenabled the plugin and layed Spotify for a bit but I was not able to replicate the issue... Just an FYI, maybe someonw else can confim?

Also i have a question, is it possible to get back to the home screen of XBMC while this addon is playing?


RE: [RELEASE] Spotimc: Another Spotify music addon - Skank - 2013-08-29

I'm just looking into this
I saw spotyxbmc2 earlier, but this install looks far easier...

Some questions about this one though Smile

Does this also put albums/artists in the albums/artist/songs section of the music library of xbmc?
Will it have appropriate background of the artist?

Can i create playlists in there?

And final: will it work with unlimited version of spotify?

thx for your time


RE: [RELEASE] Spotimc: Another Spotify music addon - SKIBBE - 2013-09-04

@Skank

1 you can only play music within the plugin/addon (not xbmc music libary)
You have album art in the SpotiMC client, if you are using a skin with artist slideshow, it will download backgrounds and depening on the artist 1 or many images are displayed when using the visuliser. also album art is displayed depenging on skin/config of your skin.

2 you can't create playlist within the plugin as far as i know, i create them using my mobile phone, shows after a few second in SpotifyMC

3 it will work only with the Spotify that can use the mobile app (i think that is premium)


RE: [RELEASE] Spotimc: Another Spotify music addon - Evero - 2013-09-05

I got tired of the 720p skin, so I created a 1080i version. Same skin only way prettier on a full HD screen. Might not be perfect, but tested everything i could think of.

Download link here.

For any newbies out there: unzip spotimc.zip (the install file), unzip the 1080i.zip file, and put it in " script.audio.spotimc/resources/skins/DefaultSkin/ " (next to the 720p folder)

Next, edit " script.audio.spotimc/default.py " in your favourite text editor, and change
xml_path = os.path.join(skin_dir, "720p/font.xml")
to
xml_path = os.path.join(skin_dir, "1080i/font.xml")

save, zip the script.audio.spotimc folder again, and reinstall in xbmc (might need to restart xbmc after uninstalling spotimc).

Was a heck of a job to change everything, I'm hoping someone will appreciate this.