The UK Home Automation Archive

Archive Home
Group Home
Search Archive


Advanced Search

The UKHA-ARCHIVE IS CEASING OPERATIONS 31 DEC 2024


[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

RE: xAP to Squeezebox without Squeezecenter



------=_NextPart_000_010B_01C9AE31.4F63A250
Content-Type: text/plain;
charset="US-ASCII"
Content-Transfer-Encoding: 7bit

Kevin's correct. To do this you'd end up re-writing a good chunk of SC. For
instance, SC does all the screen rendering, scrolling etc itself and just
sends a stream of bitmaps to the players (and all the players are
different). There's a lot of software layers between the xAP plugin and the
player-side network. So yes, it would be a completely new application.



Why don't you run SC on the mini-ITX but leave all the media files on the
big box? Worth a try. One known downside is that while audio serving
requires little CPU (unless the format requires transcoding)  the SC web
interface does take a fair amount of grunt to make it responsive.



From: xap_automation@xxxxxxx [mailto:xap_automation@xxxxxxx]
On Behalf Of Kevin Hawkins
Sent: 26 March 2009 13:43
To: xap_automation@xxxxxxx
Subject: Re: [xap_automation] xAP to Squeezebox without Squeezecenter



Hi Paul,

I'll leave Edward to pickup the main part of the question and whether
the display protocol for direct access to the SqueeezeBox players is
documented... what you're really asking for though is another
standalone application rather than an enhancement of the plugin.

.. a couple of comments

The plugin is written in Perl , which is the core code for SqueezeCentre
and hence runs on the SC PC and uses API calls to SC to handle the
communication with attached players. Hence a lot of the code is actually
implemented within SqueezeCentre itself, not just the plugin.

SqueezeCentre also acts as player discovery and handler for multiple
players. As you get into the sophisticated display message queuing that
the xAP plugin offers this would take a whole lot of work to implement
as a standalone application and could also conflict with SqueezeCentre's
handling of the players should it also be running. This could be
particularly problematic if the players use a TCP socket connection as
one or other application might monopolise the player.

It would be a lot of work to create such an application and it would
have co-existance issues with SC. Likely a lot more work / energy than
having your PC running 24/7 ;-)

SqueezeCentre is actually a fairly light application in terms of CPU
resource and does run on some fairly low power embedded devices like NAS
drives (Netgear, Synergy, Infrant etc). Linux versions too of course.
Past comments indicate that large libraries and many simultaneous
players do cause issues for SC on NAS hardware but mainly due to limited
memory issues I think. Recent builds might have improved this.

Just to also mention Roku (Pinnacle) SoundBridge players as they are
similar to SqueezeBox players but have more inbuilt intelligence in the
players. SqueezeBox players are relatively dumb devices that are owned
and driven by SqueezeCentre. Roku offer similar display capabilities
and have inbuilt smarts to attach directly to music libraries, Rhapsody,
internet radio etc. So your server is then simply a music library via
UPnP (Windows Media ). Because of this you could do as you describe and
drive the display of the Roku units with a direct network connection.
There is a fairly basic xAP message display application for Roku that
does this , as well as a HomeSeer plugin. The xAP application lacks
message prioritisation and queuing however.

Here I have two low power Atom based PC's that I run my HA core apps on
24/7 - one running WHS with Cortex, CQC and a xAP hub, and one with
HomeSeer, HouseBot, SlimServer and a xAP hub. Most normal people won't
have so many different HA apps and so could be served by just the one
machine. Personally I deliberately didn't place SlimServer on the
WHS/Cortex PC because from past experience while indexing it takes CPU
resource but once the library is built it's much easier to cohabit
with. My reasoning was to leave the Cortex PC as uncluttered and hence
responsive as possible but I really don't know if it would have been an
issue. Is there a chance you could move SlimServer to 24/7 availability
on a lower power platform ? I'm not saying it will be fine to put it
on the Cortex PC but that could be something to try and see. Maybe you
already have a suitable NAS platform even ?

One other thought .. does the Cortex SqueezeCentre plugin support
message display directly or does it (I suspect) use SC too ?

K




------=_NextPart_000_010B_01C9AE31.4F63A250
Content-Type: text/html; charset=US-ASCII
Content-Transfer-Encoding: 7bit





<head>

<style type="text/css">
<!--

/* start of attachment style */
.ygrp-photo-title{
clear: both;
font-size: smaller;
height: 15px;
overflow: hidden;
text-align: center;
width: 75px;
}
div.ygrp-photo{
background-position: center;
background-repeat: no-repeat;
background-color: white;
border: 1px solid black;
height: 62px;
width: 62px;
}

div.photo-title
a,
div.photo-title a:active,
div.photo-title a:hover,
div.photo-title a:visited {
text-decoration: none;
}

div.attach-table div.attach-row {
clear: both;
}

div.attach-table div.attach-row div {
float: left;
/* margin: 2px;*/
}

p {
clear: both;
padding: 15px 0 3px 0;
overflow: hidden;
}

p span {
color: #628C2A;
}

div.ygrp-file {
width: 30px;
valign: middle;
}
div.attach-table div.attach-row div div a {
text-decoration: none;
}

div.attach-table div.attach-row div div span {
font-weight: normal;
}

div.ygrp-file-title {
font-weight: bold;
}
/* end of attachment style */
-->
</style>
</head>
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:p="urn:schemas-microsoft-com:office:powerpoint"
xmlns:a="urn:schemas-microsoft-com:office:access"
xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"
xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882"
xmlns:rs="urn:schemas-microsoft-com:rowset"
xmlns:z="#RowsetSchema"
xmlns:b="urn:schemas-microsoft-com:office:publisher"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet"
xmlns:odc="urn:schemas-microsoft-com:office:odc"
xmlns:oa="urn:schemas-microsoft-com:office:activation"
xmlns:html="http://www.w3.org/TR/REC-html40";
xmlns:q="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:D="DAV:" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml";
xmlns:ois="http://schemas.microsoft.com/sharepoint/soap/ois/";
xmlns:
dir="http://schemas.microsoft.com/sharepoint/soap/directory/";
xmlns:ds="http://www.w3.org/2000/09/xmldsig#";
xmlns:dsp="http://schemas.microsoft.com/sharepoint/dsp";
xmlns:udc="http://schemas.microsoft.com/data/udc";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:sub="http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/";
xmlns:ec="http://www.w3.org/2001/04/xmlenc#";
xmlns:sp="http://schemas.microsoft.com/sharepoint/";
xmlns:sps="http://schemas.microsoft.com/sharepoint/soap/";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:udcxf="http://schemas.microsoft.com/data/udc/xmlfile";
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml";
xmlns:st="&#1;" xmlns="http://www.w3.org/TR/REC-html40";>

<head>
<meta http-equiv=Content-Type content="text/html;
charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered
medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
{font-family:Consolas;
panose-1:2 11 6 9 2 2 4 3 2 4;}
@font-face
{font-family:Verdana;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p
{mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
code
{mso-style-priority:99;
font-family:"Courier New";}
pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0cm;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";}
tt
{mso-style-priority:99;
font-family:"Courier New";}
span.left
{mso-style-name:left;}
span.bld
{mso-style-name:bld;}
p.ad, li.ad, div.ad
{mso-style-name:ad;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ad1, li.ad1, div.ad1
{mso-style-name:ad1;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ad2, li.ad2, div.ad2
{mso-style-name:ad2;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ad3, li.ad3, div.ad3
{mso-style-name:ad3;
mso-margin-top-alt:auto;
margin-right:0cm;
margin-bottom:7.5pt;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:Consolas;}
p.replbq, li.replbq, div.replbq
{mso-style-name:replbq;
margin:3.0pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
span.yshortcuts
{mso-style-name:yshortcuts;}
p.ad4, li.ad4, div.ad4
{mso-style-name:ad4;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ad5, li.ad5, div.ad5
{mso-style-name:ad5;
mso-margin-top-alt:auto;
margin-right:0cm;
margin-bottom:7.5pt;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ad6, li.ad6, div.ad6
{mso-style-name:ad6;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
span.yshortcuts1
{mso-style-name:yshortcuts1;
font-family:"Verdana","sans-serif";
font-weight:bold;}
span.yshortcuts2
{mso-style-name:yshortcuts2;
font-family:"Verdana","sans-serif";
color:#1E66AE;
font-weight:normal;}
span.EmailStyle35
{mso-style-type:personal-reply;
font-family:"Calibri","sans-serif";
color:#1F497D;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page Section1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.Section1
{page:Section1;}
/* List Definitions */
@list l0
{mso-list-id:2092461321;
mso-list-template-ids:1624909122;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:36.0pt;
mso-level-number-position:left;
text-indent:-18.0pt;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
ol
{margin-bottom:0cm;}
ul
{margin-bottom:0cm;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>

<body bgcolor=white lang=EN-GB link=blue vlink=purple>



<div class=Section1>

<p class=MsoNormal><span
style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Kevin&#8217;s correct. To do this you&#8217;d end
up re-writing a
good chunk of SC. For instance, SC does all the screen rendering, scrolling
etc
itself and just sends a stream of bitmaps to the players (and all the
players
are different). There&#8217;s a lot of software layers between the xAP
plugin
and the player-side network. So yes, it would be a completely new
application.<o:p></o:p></span></p>

<p class=MsoNormal><span
style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><span
style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Why don&#8217;t you run SC on the mini-ITX but leave
all the
media files on the big box? Worth a try. One known downside is that while
audio
serving requires little CPU (unless the format requires
transcoding)&nbsp; the
SC web interface does take a fair amount of grunt to make it
responsive.<o:p></o:p></span></p>

<p class=MsoNormal><span
style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p>&nbsp;</o:p></span></p>

<div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm
4.0pt'>

<div>

<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm
0cm 0cm'>

<p class=MsoNormal><b><span lang=EN-US
style='font-size:10.0pt;font-family:
"Tahoma","sans-serif"'>From:</span></b><span
lang=EN-US style='font-size:10.0pt;
font-family:"Tahoma","sans-serif"'>
xap_automation@xxxxxxx
[mailto:xap_automation@xxxxxxx]
<b>On Behalf Of </b>Kevin Hawkins<br>
<b>Sent:</b> 26 March 2009 13:43<br>
<b>To:</b> xap_automation@xxxxxxx<br>
<b>Subject:</b> Re: [xap_automation] xAP to Squeezebox without
Squeezecenter<o:p></o:p></span></p>

</div>

</div>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<div id=ygrp-mlmsg>

<div id=ygrp-msg>

<div id=ygrp-text>

<p style='margin-bottom:12.0pt'>Hi Paul,<br>
<br>
I'll leave Edward to pickup the main part of the question and whether
<br>
the display protocol for direct access to the SqueeezeBox players is
<br>
documented... what you're really asking for though is another <br>
standalone application rather than an enhancement of the plugin.<br>
<br>
.. a couple of comments<br>
<br>
The plugin is written in Perl , which is the core code for SqueezeCentre
<br>
and hence runs on the SC PC and uses API calls to SC to handle the
<br>
communication with attached players. Hence a lot of the code is actually
<br>
implemented within SqueezeCentre itself, not just the plugin.<br>
<br>
SqueezeCentre also acts as player discovery and handler for multiple
<br>
players. As you get into the sophisticated display message queuing that
<br>
the xAP plugin offers this would take a whole lot of work to implement
<br>
as a standalone application and could also conflict with SqueezeCentre's
<br>
handling of the players should it also be running. This could be <br>
particularly problematic if the players use a TCP socket connection as
<br>
one or other application might monopolise the player.<br>
<br>
It would be a lot of work to create such an application and it would
<br>
have co-existance issues with SC. Likely a lot more work / energy than
<br>
having your PC running 24/7 ;-) <br>
<br>
SqueezeCentre is actually a fairly light application in terms of CPU
<br>
resource and does run on some fairly low power embedded devices like NAS
<br>
drives (Netgear, Synergy, Infrant etc). Linux versions too of course.
<br>
Past comments indicate that large libraries and many simultaneous
<br>
players do cause issues for SC on NAS hardware but mainly due to limited
<br>
memory issues I think. Recent builds might have improved this.<br>
<br>
Just to also mention Roku (Pinnacle) SoundBridge players as they are
<br>
similar to SqueezeBox players but have more inbuilt intelligence in the
<br>
players. SqueezeBox players are relatively dumb devices that are owned
<br>
and driven by SqueezeCentre. Roku offer similar display capabilities
<br>
and have inbuilt smarts to attach directly to music libraries, Rhapsody,
<br>
internet radio etc. So your server is then simply a music library via
<br>
UPnP (Windows Media ). Because of this you could do as you describe and
<br>
drive the display of the Roku units with a direct network connection.
<br>
There is a fairly basic xAP message display application for Roku that
<br>
does this , as well as a HomeSeer plugin. The xAP application lacks
<br>
message prioritisation and queuing however.<br>
<br>
Here I have two low power Atom based PC's that I run my HA core apps on
<br>
24/7 - one running WHS with Cortex, CQC and a xAP hub, and one with
<br>
HomeSeer, HouseBot, SlimServer and a xAP hub. Most normal people won't
<br>
have so many different HA apps and so could be served by just the one
<br>
machine. Personally I deliberately didn't place SlimServer on the
<br>
WHS/Cortex PC because from past experience while indexing it takes CPU
<br>
resource but once the library is built it's much easier to cohabit
<br>
with. My reasoning was to leave the Cortex PC as uncluttered and hence
<br>
responsive as possible but I really don't know if it would have been an
<br>
issue. Is there a chance you could move SlimServer to 24/7 availability
<br>
on a lower power platform ? I'm not saying it will be fine to put it
<br>
on the Cortex PC but that could be something to try and see. Maybe you
<br>
already have a suitable NAS platform even ?<br>
<br>
One other thought .. does the Cortex SqueezeCentre plugin support
<br>
message display directly or does it (I suspect) use SC too ?<br>
<br>
K<o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><span
style='color:white'><o:p></o:p></span></p>

</div>

</div>

</div>





<!-- **begin egp html banner** -->

<br>


<br>

<!-- **end egp html banner** -->


<div width="1" style="color: white; clear:
both;"/>__._,_.___</div>

<!-- Start Recommendations -->
<!-- End Recommendations -->



<!-- **begin egp html banner** -->

<img src="http://geo.yahoo.com/serv?s=97476590/grpId=9674343/grpspId=1705007709/msgId=4294/stime=1238085626";
width="1" height="1"> <br>

<!-- **end egp html banner** -->


<!-- **begin egp html banner** -->

<br>
<div style="font-family: verdana; font-size: 77%; border-top: 1px
solid #666; padding: 5px 0;" >
Your email settings: Individual EmailTraditional <br>
<a href="http://groups.yahoo.com/group/xap_automation/join;_ylc=X3oDMTJmYzU2MTg0BF9TAzk3NDc2NTkwBGdycElkAzk2NzQzNDMEZ3Jwc3BJZAMxNzA1MDA3NzA5BHNlYwNmdHIEc2xrA3N0bmdzBHN0aW1lAzEyMzgwODU2MjY-";>Change
settings via the Web</a> (Yahoo! ID required) <br>
Change settings via email: <a href="mailto:xap_automation-digest@xxxxxxx?subject=Email
Delivery: Digest">Switch delivery to Daily Digest</a>  <a
href = "mailto:xap_automation-fullfeatured@xxxxxxx?subject=Change
Delivery Format: Fully Featured">Switch to Fully Featured</a>
<br>
<a href="http://groups.yahoo.com/group/xap_automation;_ylc=X3oDMTJkdTRyNWhqBF9TAzk3NDc2NTkwBGdycElkAzk2NzQzNDMEZ3Jwc3BJZAMxNzA1MDA3NzA5BHNlYwNmdHIEc2xrA2hwZgRzdGltZQMxMjM4MDg1NjI2";>
Visit Your Group
</a>
<a href="http://docs.yahoo.com/info/terms/";>
Yahoo! Groups Terms of Use
</a>
<a href="mailto:xap_automation-unsubscribe@xxxxxxx?subject=Unsubscribe";>
Unsubscribe
</a>
<br>
</div>
<br>

<!-- **end egp html banner** -->


<div style="color: white; clear:
both;"/>__,_._,___</div>
</body>

</html>

------=_NextPart_000_010B_01C9AE31.4F63A250--


xAP_Automation Main Index | xAP_Automation Thread Index | xAP_Automation Home | Archives Home

Comments to the Webmaster are always welcomed, please use this contact form . Note that as this site is a mailing list archive, the Webmaster has no control over the contents of the messages. Comments about message content should be directed to the relevant mailing list.