How To: Easy synchronised multiroom audio (inc. Spotify!) using XSqueeze in XBMC

  Thread Rating:
  • 2 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
b7ets Offline
Junior Member
Posts: 9
Joined: Jul 2011
Reputation: 0
Post: #16
Hi thanks for this bit of kit its something ive been looking to do for a while now.
I do have a problem though I cant play it on both machines (obviously the whole idea!)

Ok so I have 2 vaio laptops both with win 7 and most up to date eden xbmc

I have installed logitech server on my host machine scanned my library and it finds everything fine.

I have then installed on both machines you rep zip file and again all installs ok in xbmc.

This is where I am having trouble or im doing it wrong.....
I play a song through xbmc on my host machine trough xsqueeze and it plays fine but then i go to my other machine hoping it to be playing too and its not?? I have tried it both ways and it only plays from the machine i have selected the music from. I have had the non host machine in 3 states 1 being no xbmc running 2 being xbmc running and just on home screen and 3 having xbmc running and in the xsqueeze programme.

Please I hope you can help.
Regards
B7ets
find quote
bossanova808 Offline
Donor
Posts: 2,101
Joined: Sep 2009
Reputation: 29
Location: Melbourne, Australia
Post: #17
Hi B7ets

Ok, first things first - do the players each play individually, i.e. you can confirm both setups are basically working?

If so - it sounds like you haven't set up the synchronisation group properly in the players (see step 4 above). This is what it sounds like from your descrription - you just need to tell player b to join player a as a sync'ed player.

If not - then you need to fix the player that isn't working first as a thing on its own, then set up sync groups after that.
The music/syncing will only occur inside of XSqueeze.
find quote
debennett2 Offline
Senior Member
Posts: 102
Joined: Jan 2006
Reputation: 0
Location: Cleveland, OH
Post: #18
I currently don't have the second PC to test this out with but maybe someone can clarify whether I can do what I imagine I want to do:

I have an HTPC running XBMC that has my main livingroom speakers. I have a touchscreen PC that I want to be able to use as almost a jukebox from time to time running XBMC and have the sound play on the main XBMC PC.

Questions:

Is that in itself possible as is?

Does the media appear to be playing from both XBMC instances or the host or client machine?

Is this more of a toggle as to where the sound will output and unobtrusive or is this kinda like a separate player?

THANKS!
find quote
bossanova808 Offline
Donor
Posts: 2,101
Joined: Sep 2009
Reputation: 29
Location: Melbourne, Australia
Post: #19
Yes that's possible - you'd run XSQueeze on both of them, with the one on the main PC in playback mode, and the one on the touchscreen in controller only mode.

The music would then play on your main PC, with jsut control on the touchscreen. (I plan to add some touchscreen friendly controls to the plugin soon(ish)).

It's really a separate player that's wrapped by XBMC. There's no fancy toggle system really, it's just in the addon settings, but once set up you could use as you describe very easily and reliable with the proviso that touch screen controls on the main screen aren't really in place yet, it has initially been set up to use the remote control...
find quote
jacksback Offline
Member
Posts: 71
Joined: Feb 2009
Reputation: 0
Post: #20
Thanks for this. Will try it out tonight
find quote
Hilox Offline
Junior Member
Posts: 1
Joined: Sep 2012
Reputation: 0
Location: Sweden
Post: #21
Hi there

I can say that i was pretty pleased when i found this add-on as I have 2 Logitech squeezebox-players and a laptop with xbmc on it so i gave it a shot. Easy to install and to setup, it found my media server directly and even in my squeezebox control software for both my android and Iphone i was able to remote play on the xbmc machine with the xsqueeze add-on, great work Bossanova808!!!

Nw a couple of things (kinks) i just want to know about.

1. If i try to play a track from spotify (from my squeeze box controller in my phone) it wont play it or maybe a half a second then it stops.
2. I tried many ways to synchronise both the players and Xsqueeze together but it could not synchronise the track, it was allways a part of a seond delay on each player (2 logitech boxes and Xsqueeze computer).

Am I doing something wrong or you are still working on this nice add-on?

Cheers/M
find quote
bossanova808 Offline
Donor
Posts: 2,101
Joined: Sep 2009
Reputation: 29
Location: Melbourne, Australia
Post: #22
Yeah binary type add ons aren't supported by software players like Squeezeslave I am afraid. DRM crap, basically, so unlikely to be solved. Very few of the apps work, really.

Re: syncing - your basic issue is that your software player has an audio buffer. There are tweaks both in Squeezebox server and Squeezeslave to improve the sync by adding delays etc, but please see their own docs/developers for help with that - I just wrap up their work. My experience is good sync on Linux (Openelec) in general, poor on Windows....
find quote
CrimsonGT Offline
Member
Posts: 74
Joined: Nov 2011
Reputation: 0
Post: #23
I followed the instructions in the first post exactly, but I seem to have hit a snag. Right now I have the server and the slave running on the same machine (haven't configured the rest of my HTPC's yet) and outside of XBMC everything seems to be working fine. The server is running as expected, the squeeze slave that the XSqueeze addon starts is registered in the Squeeze Web CP, and I can handle everything via the Web Panel without any problems.

However, when I click on the XSqueeze addon in XBMC, it says its connecting and to give it 10 seconds. After a few seconds that closes and nothing ever opens. There is supposed to be some sort of GUI for the XSqueeze addon correct? I don't see any obvious errors in the XBMC log files, but I can post it if needed.

A side issue I have noticed as well is that once I close XBMC, the squeeze slave application continues to run. When I try and start XBMC backup it throws an error until I manually kill the squeeze slave process, then it can start back up fine.
find quote
bossanova808 Offline
Donor
Posts: 2,101
Joined: Sep 2009
Reputation: 29
Location: Melbourne, Australia
Post: #24
Yeah that's not right. Full debug log thanks.
find quote
ReducedToZero Offline
Senior Member
Posts: 102
Joined: Jun 2011
Reputation: 4
Post: #25
(2012-09-08 17:58)CrimsonGT Wrote:  Right now I have the server and the slave running on the same machine

LMS runs by default on port 9090, the XBMC JSON-RPC API runs by default on port 9090.

(2012-09-08 17:58)CrimsonGT Wrote:  when I click on the XSqueeze addon in XBMC, it says its connecting and to give it 10 seconds. After a few seconds that closes and nothing ever opens.

Xsqueeze is connecting to the XBMC owned port 9090 (and so doesn't think it's failed), but it never gets the response it expects and so hangs (as it's talking to the XBMC JSON-RPC API and not LMS). Incidentally, if you start LMS before XBMC, it will own port 9090 and XBMC will throw an error on start up.

If you change the default port LMS listens on to, say, 9001, and configure Xsqueeze to match, I reckon you'll be good to go Smile

'Zero

-----
XBMC Frodo | XBMCbuntu (+ OSX / Windows 7 on a MacMini) | nbox 1.0 | Maraschino Git | xbmcremote 1-04 | XSqueeze
-----
On a long enough timeline. The survival rate for everyone drops to zero.
find quote
bossanova808 Offline
Donor
Posts: 2,101
Joined: Sep 2009
Reputation: 29
Location: Melbourne, Australia
Post: #26
Thanks ReducedToZero, that is good advice. I have modded the first post to reflect this advice... I haven't run the two on the same system so didn't catch this.

I am surprised you don't get a window or message, though, in this case - I will look at it - I would have thought a 'failed to connect' popup would occur and XSqueeze would tidy itself up, but it may be that my exception trapping is a bit lax....will check it out (if and when googlecode ever lets me push commits agian grrrr!)
find quote
dchurch24 Offline
Senior Member
Posts: 103
Joined: May 2004
Reputation: 0
Post: #27
Hi, this looks fantastic!

Did you have any luck getting the OpenElec on the Raspberry Pi to synch?

I have 3 xbmc clients across three floors (all sharing media from a WD MyBookWorld), typically (or not ;-) ) they are all running on different platforms: Ubuntu 10.10, Win7 and OpenElec for the Pi.

Do you think it would be possible to synch these using this method?

EDIT: I thought I'd test it with my laptop and my main XBMC machine. On the main machine (Ubuntu 10.10) it all installs and I can control the music from the LMS web interface....but on my laptop (also, Ubuntu 10.10) the plugin doesn't install, I get an error saying "XSqueeze dependencies not met". What do I need to install?

EDIT2: looking at the log it appears to need Artist Slideshow 1.4.4 - for some reason I can only install 1.1.5 - I've uninstalled and reinstalled, but I only get 1.1.5.
(This post was last modified: 2012-09-17 10:41 by dchurch24.)
find quote
bossanova808 Offline
Donor
Posts: 2,101
Joined: Sep 2009
Reputation: 29
Location: Melbourne, Australia
Post: #28
Yeah it will be AS - if you force refresh on the main xbmc repo it should pull the latest versions - does for me? You could always manually copy it from another install....not sure why that is not working, maybe ask in the AS thread?

Re: syncing - both LMS and squeezeslave (the player used) have options for improving sync, although there's always a limit with software players - check out their options on their own webpages, basically. In my experience you can get it so it's fine for room to room playback, but it really helps if the platforms are pretty similar....

(NB I appear to have broken things on 64 bit linux at the moment and will try and get that fixed soon!)
(This post was last modified: 2012-09-17 02:24 by bossanova808.)
find quote
bossanova808 Offline
Donor
Posts: 2,101
Joined: Sep 2009
Reputation: 29
Location: Melbourne, Australia
Post: #29
Ok I pushed 0.7.1 which should restore linux 64 bit compatibility (albeit with an older squeezeslave binary that other platforms).
find quote
dchurch24 Offline
Senior Member
Posts: 103
Joined: May 2004
Reputation: 0
Post: #30
Hi, thanks for that.
After a little more digging, it seems that I have an experimental PVR version installed - I've done a 'apt-get remove xbmc xbmc-standalone --purge', but upon reinstall it seems to put that version back again. I've removed the repos for the PVR versions, and even gone through Synaptic to see if it's still there - it's not.

Still, no matter. It's not worth spending any time on, as this machine won't be in the 'xbmc multiroom' loop anyway. I was just in bed last night and got all excited about this plugin so decided to test it with my HTPC in the bedroom and my laptop.

Just one quick question though, as I have the three different platforms, which would be best to run the SqueezeServer on? ...or will this simply be a matter of experimenting?

Just for others searching the thread:

If you need to change the port on the linux version because you are running both server and xbmc script (with xbmc allowing remote control) on the same machine, then you need to start the server with:
Code:
squeezeboxserver --cliport 9091
(Note: You may also need to kill any existing instances of it).
(Note2: If you are running Transmission with the web interface enabled, this uses 9091 by default, so either change this or use a different port for the squeezeserver)

The Logitech wiki says that you should use:
Code:
service squeezeboxserver start
to start the service, but I only got 'service not found' error when I did this.
(This post was last modified: 2012-09-17 10:44 by dchurch24.)
find quote
Post Reply