XBMC Community Forum
[RELEASE]XSqueeze - Squeezebox player, music chooser and visualiser for XBMC - Printable Version

+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Help and Support (/forumdisplay.php?fid=33)
+--- Forum: Add-ons Help and Support (/forumdisplay.php?fid=27)
+---- Forum: Program Add-ons (/forumdisplay.php?fid=151)
+---- Thread: [RELEASE]XSqueeze - Squeezebox player, music chooser and visualiser for XBMC (/showthread.php?tid=122199)



- bossanova808 - 2012-02-15 13:15

still says 2.4 in the log right above the error:

10:51:56 T:2817760112 M:1386307584 DEBUG: Process - Setting the Python path to /home/baird/.xbmc/addons/script.xsqueeze:/home/baird/.xbmc/addons/script.module.simplejson/lib:/home/baird/.xbmc/addons/script.module.beautifulsoup/lib:/usr/lib/xbmc/addons/script.module.pil/lib:/usr/lib/xbmc/addons/script.module.pysqlite/lib:/usr/lib/xbmc/system/python/python24.zip:/usr/share/xbmc/system/python/lib/python24.zip:/usr/share/xbmc/system/python/lib/python2.4/:/usr/share/xbmc/system/python/lib/python2.4/plat-linux2:/usr/share/xbmc/system/python/lib/python2.4/lib-tk:/usr/share/xbmc/system/python/lib/python2.4/lib-dynload
10:51:56 T:2817760112 M:1386307584 DEBUG: Process - Entering source directory /home/baird/.xbmc/addons/script.xsqueeze
10:51:56 T:2817760112 M:1386307584 INFO: -->Python script returned the following error<--
10:51:56 T:2817760112 M:1386307584 ERROR: Error Type: exceptions.SyntaxError
10:51:56 T:2817760112 M:1386307584 ERROR: Error Contents: ('invalid syntax', ('/home/baird/.xbmc/addons/script.xsqueeze/default.py', 46, 23, ' except Exception as inst:\n'))


Yep try Eden - can't be bothered supporting dharma and/or 2.4 as I've kinda left that long behind now, sorry!


- fruitloaf - 2012-02-15 13:17

How odd - python -V gives Python 2.6.5

Fair enough with not supporting dharma though - I'll try Eden out in the next couple of days.


- fruitloaf - 2012-02-15 13:18

I've just looked at the log and seen that XBMC uses its own python not the system version which explains it.


- bossanova808 - 2012-02-15 13:19

yeah although I think that has changed with Eden actually...


- bossanova808 - 2012-02-15 14:37

Ok just pushed 0.0.9 - this is the first version that I am a bit happy with.

Internally I now think it is doing things correctly (using a doModal window, a thread/locking for updating the screen, all the data going into $INFO etc). It looks much the same but is actually much simpler and neater on the inside, so more reliable. Works nicely with radio etc. too now.

It's also now fully and easily skinnable, and I will add more data to the $INFO so that you can put more on screen soon. See sample file in the addon/resources/skins folder...

SO - I am looking for some help if anyone fancies it - care to make a nice, Confluency 'Now Playing' screen so that it looks a bit better in terms of visually matching XBMC, at least the default skin (of course other skin versions appreciated too!).

Also - I'd like a nice icon as the current one is crap. I don't really know what...there's a PSD in the add on dir you can use as your starting point....ideally it would sit on a nice background or a transparent one...

If anyone fancies helping, just get to it and let me know!

Next step is to deal with starting/stopping SqueezeSlave with the addon Maybe let me know what platforms you are using so I can work on them first - I have windows, OSX and OpenElec lying around so will test on those, but I don't know about Live/XBMCUbuntu or Mint etc....


- fruitloaf - 2012-02-15 16:51

Just to say that I've stuck the live version on a USB stick and it works fine. I just need to get squeezeslave to recognise the HDMI audio output on my ION 330 so I can hear the output.

If I get a chance I'll have a look at the layout and see if I can do anything. I've not done any XBMC scripting before but am I right in saying the layouts are all XML?


- bossanova808 - 2012-02-16 01:01

Yep it's all XML and pretty easy stuff for the most part if you're just laying out controls and pulling data from the $INFO section.

http://wiki.xbmc.org/index.php?title=Skinning

...but basically whoever does it would want to take an existing Confluence page (e.g. with the clock/weather etc) and make a nice screen with a dark shaded floor and reflections etc. a la Confluence pages (e.g. look at the weather page MyWeather.xml for a basic example)....it's really just to make it integrate better with XBMC's default skin.

The background should be nice and simple so later we can backdrop artist images into it....and there should be space for bio/album info etc. as well!


- bossanova808 - 2012-02-16 05:16

grr missed a small bug - if the playlist is completely empty it gets grump at start up. I have fixed it, but also started mucking about with start/stop of squeezeslave, to I can't be bothered bumping a version. Just use the Web UI to add some stuff to your playlist first and then it should start fine.


- bossanova808 - 2012-02-16 14:32

Just an update - I have made much better progress than I have expected...

I have start/stop squeezeslave working on Windows and 99% on Openelec (minor python system ID issue there I have a crude hack working though). It works as expected - you can use your normal asound.conf, get rid of the squeezeslave service, and truehd etc. works again of course.

Working really well.

Also, I have knocked up a reasonable Confluence skin file and it's looking quite a lot prettier.

I will tidy it up a bit tomorrow and push out 0.1 soon Smile


- bossanova808 - 2012-02-16 14:51

<caveat> - on Openelec one does still get the periodic audio dropouts mentioned in that squeezeslave thread...no idea what that is...


- bossanova808 - 2012-02-17 08:24

Ok - just pushing v0.2 now - need to update the front page, but two big changes:

1. Squeezeslave is now integrated/comes with add on & starts/stops with the add on. Tested on Windows and Openelec so far - not OSX/general linux. Testers needed! - note, there are several new skin settings to look at for this. There is a crude hack for openelec - you have to toggle a skins setting 'running on openelec' to on if you are - as I haven't worked out a way to do this in code yet as openelec is quirky with python.

2. Much prettier UI - Confluence. I have not tried other skins yet....I use Confluence anyway. Feel free to let me know how bad it breaks in others....


- bossanova808 - 2012-02-17 11:50

Minor openelec glitches...0.2.2 pushing out now... (need to make the binaries executable..!)


- fruitloaf - 2012-02-17 13:22

On XBMCbuntu beta 3 I get the following error if I don't use the openelec option

Code:
11:11:04 T:2887764848  NOTICE: -->Python Interpreter Initialized<--
11:11:04 T:2887764848  NOTICE: XSqueeze-0.2.2: ### XSqueeze Starting ...
11:11:04 T:2887764848  NOTICE: XSqueeze-0.2.2: ### Author: bossanova808
11:11:04 T:2887764848  NOTICE: XSqueeze-0.2.2: ### Version: 0.2.2
11:11:04 T:2887764848   ERROR: Error Type: <type 'exceptions.IOError'>
11:11:04 T:2887764848   ERROR: Error Contents: (10, 'No child processes')
11:11:04 T:2887764848   ERROR: Traceback (most recent call last):
                                              File "/home/baird/.xbmc/addons/script.xsqueeze/default.py", line 41, in <module>
                                                system = platform.system()
                                              File "/usr/lib/python2.7/platform.py", line 1306, in system
                                                return uname()[0]
                                              File "/usr/lib/python2.7/platform.py", line 1273, in uname
                                                processor = _syscmd_uname('-p','')
                                              File "/usr/lib/python2.7/platform.py", line 1030, in _syscmd_uname
                                                rc = f.close()
                                            IOError: (10, 'No child processes')

If I use the option then I get the following error

Code:
11:12:42 T:3036674928  NOTICE: -->Python Interpreter Initialized<--
11:12:43 T:3036674928  NOTICE: XSqueeze-0.2.2: ### XSqueeze Starting ...
11:12:43 T:3036674928  NOTICE: XSqueeze-0.2.2: ### Author: bossanova808
11:12:43 T:3036674928  NOTICE: XSqueeze-0.2.2: ### Version: 0.2.2
11:12:43 T:3036674928  NOTICE: XSqueeze-0.2.2: Starting local Squeezeslave, system is Linux
11:12:43 T:3036674928  NOTICE: XSqueeze-0.2.2: Attempting to start Squeezelave: ['/home/baird/.xbmc/addons/script.xsqueeze/resources/bin/squeezeslave-1.2-311-lnx26//squeezeslave', '-m00:00:00:00:00:01', '192.168.11.15']
11:12:43 T:3036674928  NOTICE: XSqueeze-0.2.2: Exception: Failed creating squeezeslave process[[Errno 13] Permission denied]

But if I make the squeezeslave binaries executable all works! It's a little slow to exit an kill the squeezeslave process so it would be good to put up a dialogue saying exiting when you get the exit request otherwise I can see the better half mashing the exit key a lot. That said I just tried it a second time and it exited virtually instantly - maybe it's just something on the first launch or a random event?

The skin is fine on confluence but is missing the background image when I use Aeon Nox - I shoud have some time this weekend and might look into the skin files but if it's easy a file choser in the configuration menu or just including a background with the addon rather than relying on the themes artwork would work better accross skins I think.


- bossanova808 - 2012-02-17 13:38

hmmm ok looks like that a general python/linux thing - odd. I will change that add on setting to 'using linux' rather than just 'using openelec' for now, but I am hoping I can find a nice programmatic way soon anyway. I don't have a ubuntu setup...

Re: the binaries/executable - on openelec I have the add-on doing a chmod but clearly that fails on XBMCuntu (I was suprised it worked on OE). I don't think there is any other way than adding instructions about doing this, as it's a security issue and I suspect deliberately locked down...

Re the skin BG - yes, including with the addon makes sense indeed. Any ideas for a nice one - I like the guitar/fire one but am open to other ideas.

I have done a nicer icon, too but not pushed it, and I suspect xbmc's caching will block it from being visible if you already have the add on installed - the thumb cache is a very persistent little bugger!

Re: the stopping - it's pretty much instant on OE and Windows. I can put in a notification but it might be more confusing ... I'll try it and see.


- fruitloaf - 2012-02-17 14:06

I'll have a play around with python and see if I can't fix that detection line since XBMCbuntu will be quite a common platform.

You're probably right about having to manually set permissions - I ran the same command under the same xbmc user and it didn't work.

Any background would be fine by me as currently it falls back to black background. It would be nice to have the option to load different skins and looking at the directory structure it doesn't look too hard to implement that and then it would be pretty easy for me to add a skin that matches Aeon.