Squeezebox Player Music Source - Printable Version
+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Development (/forumdisplay.php?fid=32)
+--- Forum: Development (/forumdisplay.php?fid=93)
+--- Thread: Squeezebox Player Music Source (/showthread.php?tid=114290)
- MrBasset - 2011-11-26 01:51
sdsnyr94 Wrote:Slightly off topic : Do you have squeezeslave running all the time? I could not do that without XBMC saying the soundcard was in use. Just curious how you are running it.
IIRC you need to configure both XBMC and SqueezeSlave to use a mixer in alsa. XBMC live seems to grab the device exclusively and not install a mixer config. I can't check right now as I'm in the middle of rebuilding my HTPC, but I had to do something like that; which is also one of the reasons I'd want to look at using the SqueezeSlave source as the foundation for a libSlimProto and use the binary addons to bring it into XBMC to use the internal player.
Of course, that depends on being able to easily seperate the SqueezeSlave code and also my understanding of binary plugins.
- Powderking - 2011-11-27 17:02
daniel.pool Wrote:Oops, think we had a bit of a dissconnect; I wasn't looking to replace squeezeserver with XBMC. Squeezeslave is a headless player that connects to the LMS over the SlimProto. I'd wanted to create a plug-in that allows XBMC to use SqueezeSlave (or use the code within SqueezeSlave to bring the same functionality into the plug-in) so that my HTPC/XBMC would be seen as a player by the squeezeserver. If I were using squeezeslave as an external player I'd then be able to pass up things like now playing to XBMC. Or alternatively, I'd just be using the internal XBMC player and exploiting the code of others (with suitable credits due ... I've not taken a proper look at squeezeslave so I don't know if I'd be able to take librarys and then contribute back as of yet).
Oh, it really seems we talk about the same thing. Sorry for the misunderstanding.
For me it's important to use as much from XBMC as possible to get a good integration of the squeezebox player:
There already is an amazing music UI so it would be a shame to not use that
daniel.pool Wrote:After all, I imagine if anyone used SqueezeServer for managing their music they would be looking at a complete music library replacement rather than having the two co-exist. Not really sure though, but I don't see much of a use case for having library A from the squeezeserver and library B from the secret music source that only XBMC sees? Or even XBMC scraping your squeezeserver library and copying it into it's own music library.
I totally agree with you!
You should be able to select only the slimproto music source (no local, samba or whatever).
Probably XBMC wont have it's own database in this case anymore but is able to fully use the LMS database and all the functions a hardware SqueezeBox or the SqueezeSlave player is capable of.
- coercity - 2011-11-27 20:31
sdsnyr94 Wrote:Slightly off topic : Do you have squeezeslave running all the time? I could not do that without XBMC saying the soundcard was in use. Just curious how you are running it.here is the solution : http://forum.xbmc.org/showpost.php?p=825708&postcount=7
- sdsnyr94 - 2012-01-20 18:17
Powderking - are you still planning to go ahead with your plans? I saw that you had some posts on the squeezebox support forum, but there has been no activity there in a while either, so I am hoping you still have plans on this project.
- Powderking - 2012-01-20 18:36
Yes, I still have plans.
At the moment I'm preparing for exams and in February I'd like to start.
Unfortunately I haven't heard of my Prof so I don't know if the project is accepted.
But I'd like to start in February...
- ashlar - 2012-01-23 12:00
Cool! It would be great!
- IssacBinary - 2012-01-31 18:58
This is one thing ive really been wanting and really suprised nothing has been done before!
So I thought if I could come up with a easy way to do this I could just hire a programmer, I havn't hired anyone but ive come up with a way it could be easily done... (seems "easy" to me)
Lets say we have our music stored on machine A, this can be the htpc itself, a NAS, another pc, it doesn't matter.
Squeezeserver connects to A for its library. Also XBMC also has access to A, and most people probably have A added into XMBCs music library.
So XBMC and Squeezeserver both use the same source for its library. So same file names, same file directory address etc.
So why not just implement a plugin that makes XBMC look like a fake player (but doesn't actually need to play), this is so we can control XBMC independently.
Lets say squeezeserver sends a song B to the "fake player". All XBMC needs to do is grab the file name / file storage location from the information sent from squeezeserver and then XBMC itself takes over and just get the file from its library and plays the song.
Everything is using standard XBMC features, the music is playing as if you have manually selected it from the libary. All thats happening is your using squeezeserver as an advanced remote almost.
You can send normal commands such as play and pause etc and XBMC receives this command and just executes it.
This seamlessly integrates everything. Without having to activate a squeezebox plugin or having music playing though the background of XBMC etc.
...So the reason I say its "easy" to do is because no steaming protocols and things need to be dealt with, no codecs or anything like that.
- Powderking - 2012-01-31 21:02
Thanks for your reply!
And sorry that I don't have much time to write a proper answer.
The main drawback of your approach is the lack of integration in the squeezebox environment, e.g. there's no synchronisation with other squeezeboxes possible.
Or did I miss something?
- MrBasset - 2012-02-01 00:47
Thanks for the suggestion, but I'm not sure that it would work, basically because of the way squeezecentre or the controllers instruct players to work.
The player has no idea of where the file is; instead it is just handed a stream by squeezecentre saying, here play this. In order to get things working a you suggest I think that we'd need to change the way squeezecentre serves up its music, or at least bypass it so that XBMC is fetching the music.
You'd also loose out on things like sync'd playback as Powderking says (though the software player tend to be a bit dicey with synch'ing anyway).
Personally, I think implementing a libProto would be faster as it is more in tune with what squeezecentre is expecting.
But that's my two cents,
Just wish I could put all my other projects to bed so that I had some time to look at this, have SB's in the playroom and kitchen but still a fiddle to link up my XBMC box in the living room :-) Hopefully tail end of March. Powderking, you seem closer to starting than me, you doing this for a Uni dissertation?
- sdsnyr94 - 2012-02-01 03:34
The other thing you miss out on using this approach would be the streaming content that LMS (aka SqueezeCenter) offers (radio stations, pandora, etc..)