|
a/doc/sc2mpd.html |
|
b/doc/sc2mpd.html |
1 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
|
1 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
|
2 |
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
2 |
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
3 |
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
3 |
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
4 |
<head>
|
4 |
<head>
|
5 |
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
|
5 |
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
|
6 |
<meta name="generator" content="AsciiDoc 8.6.7" />
|
6 |
<meta name="generator" content="AsciiDoc 8.6.9" />
|
7 |
<title>sc2mpd: helper for upmpdcli Songcast support</title>
|
7 |
<title>sc2mpd: helper for upmpdcli Songcast support</title>
|
8 |
<style type="text/css">
|
8 |
<style type="text/css">
|
9 |
/* Shared CSS for AsciiDoc xhtml11 and html5 backends */
|
9 |
/* Shared CSS for AsciiDoc xhtml11 and html5 backends */
|
10 |
|
10 |
|
11 |
/* Default font. */
|
11 |
/* Default font. */
|
|
... |
|
... |
85 |
margin-top: 0;
|
85 |
margin-top: 0;
|
86 |
}
|
86 |
}
|
87 |
ul > li { color: #aaa; }
|
87 |
ul > li { color: #aaa; }
|
88 |
ul > li > * { color: black; }
|
88 |
ul > li > * { color: black; }
|
89 |
|
89 |
|
90 |
pre {
|
90 |
.monospaced, code, pre {
|
|
|
91 |
font-family: "Courier New", Courier, monospace;
|
|
|
92 |
font-size: inherit;
|
|
|
93 |
color: navy;
|
91 |
padding: 0;
|
94 |
padding: 0;
|
92 |
margin: 0;
|
95 |
margin: 0;
|
|
|
96 |
}
|
|
|
97 |
pre {
|
|
|
98 |
white-space: pre-wrap;
|
93 |
}
|
99 |
}
|
94 |
|
100 |
|
95 |
#author {
|
101 |
#author {
|
96 |
color: #527bbd;
|
102 |
color: #527bbd;
|
97 |
font-weight: bold;
|
103 |
font-weight: bold;
|
|
... |
|
... |
217 |
border-left: 3px solid #dddddd;
|
223 |
border-left: 3px solid #dddddd;
|
218 |
padding-left: 0.5em;
|
224 |
padding-left: 0.5em;
|
219 |
}
|
225 |
}
|
220 |
|
226 |
|
221 |
div.imageblock div.content { padding-left: 0; }
|
227 |
div.imageblock div.content { padding-left: 0; }
|
222 |
span.image img { border-style: none; }
|
228 |
span.image img { border-style: none; vertical-align: text-bottom; }
|
223 |
a.image:visited { color: white; }
|
229 |
a.image:visited { color: white; }
|
224 |
|
230 |
|
225 |
dl {
|
231 |
dl {
|
226 |
margin-top: 0.8em;
|
232 |
margin-top: 0.8em;
|
227 |
margin-bottom: 0.8em;
|
233 |
margin-bottom: 0.8em;
|
|
... |
|
... |
413 |
/*
|
419 |
/*
|
414 |
* xhtml11 specific
|
420 |
* xhtml11 specific
|
415 |
*
|
421 |
*
|
416 |
* */
|
422 |
* */
|
417 |
|
423 |
|
418 |
tt {
|
|
|
419 |
font-family: "Courier New", Courier, monospace;
|
|
|
420 |
font-size: inherit;
|
|
|
421 |
color: navy;
|
|
|
422 |
}
|
|
|
423 |
|
|
|
424 |
div.tableblock {
|
424 |
div.tableblock {
|
425 |
margin-top: 1.0em;
|
425 |
margin-top: 1.0em;
|
426 |
margin-bottom: 1.5em;
|
426 |
margin-bottom: 1.5em;
|
427 |
}
|
427 |
}
|
428 |
div.tableblock > table {
|
428 |
div.tableblock > table {
|
|
... |
|
... |
451 |
|
451 |
|
452 |
/*
|
452 |
/*
|
453 |
* html5 specific
|
453 |
* html5 specific
|
454 |
*
|
454 |
*
|
455 |
* */
|
455 |
* */
|
456 |
|
|
|
457 |
.monospaced {
|
|
|
458 |
font-family: "Courier New", Courier, monospace;
|
|
|
459 |
font-size: inherit;
|
|
|
460 |
color: navy;
|
|
|
461 |
}
|
|
|
462 |
|
456 |
|
463 |
table.tableblock {
|
457 |
table.tableblock {
|
464 |
margin-top: 1.0em;
|
458 |
margin-top: 1.0em;
|
465 |
margin-bottom: 1.5em;
|
459 |
margin-bottom: 1.5em;
|
466 |
}
|
460 |
}
|
|
... |
|
... |
537 |
}
|
531 |
}
|
538 |
|
532 |
|
539 |
@media print {
|
533 |
@media print {
|
540 |
body.manpage div#toc { display: none; }
|
534 |
body.manpage div#toc { display: none; }
|
541 |
}
|
535 |
}
|
|
|
536 |
|
|
|
537 |
|
542 |
</style>
|
538 |
</style>
|
543 |
<script type="text/javascript">
|
539 |
<script type="text/javascript">
|
544 |
/*<![CDATA[*/
|
540 |
/*<![CDATA[*/
|
545 |
var asciidoc = { // Namespace.
|
541 |
var asciidoc = { // Namespace.
|
546 |
|
542 |
|
|
... |
|
... |
746 |
for the <strong>upmdcli</strong> UPnP MPD front-end. Specifically, it implements a
|
742 |
for the <strong>upmdcli</strong> UPnP MPD front-end. Specifically, it implements a
|
747 |
<strong>Songcast</strong> <em>Receiver</em> service, managed by <strong>upmpdcli</strong>.</p></div>
|
743 |
<strong>Songcast</strong> <em>Receiver</em> service, managed by <strong>upmpdcli</strong>.</p></div>
|
748 |
<div class="paragraph"><p>To use it, you need the
|
744 |
<div class="paragraph"><p>To use it, you need the
|
749 |
<a href="http://www.linn.co.uk/software#songcast">Linn Songcast application</a>
|
745 |
<a href="http://www.linn.co.uk/software#songcast">Linn Songcast application</a>
|
750 |
installed on a Microsoft Windows or Apple Mac OS X PC. See
|
746 |
installed on a Microsoft Windows or Apple Mac OS X PC. See
|
751 |
<a href="#whatis_songcast">further</a> for more explanations about what this does.</p></div>
|
747 |
<a href="#whatis_songcast">further</a> for more explanations about what this does.
|
|
|
748 |
Not all Songcast versions work well with upmpdcli. Lately I’ve had good
|
|
|
749 |
luck with
|
|
|
750 |
<a href="http://oss.linn.co.uk/Releases/Songcast/Davaar/Songcast_4.4.190_win.exe">4.4.190</a>
|
|
|
751 |
but not with the 4.5 ones.</p></div>
|
752 |
<div class="paragraph"><p>Warning: <strong>there is no software volume control</strong> of the Songcast Receivers
|
752 |
<div class="paragraph"><p>Warning: <strong>there is no software volume control</strong> of the Songcast Receivers
|
753 |
for now: use either a local mixer or the little round things on the power
|
753 |
for now: use either a local mixer or the little round things on the power
|
754 |
amps. Set it low when experimenting !</p></div>
|
754 |
amps. Set it low when experimenting !</p></div>
|
755 |
<div class="paragraph"><p>There are Debian Wheezy <strong>sc2mpd</strong>
|
755 |
<div class="paragraph"><p>There are Debian Wheezy <strong>sc2mpd</strong>
|
756 |
packages in the <strong>upmpdcli</strong> repository for i386, amd64 and Raspberry Pi
|
756 |
packages in the <strong>upmpdcli</strong> repository for i386, amd64 and Raspberry Pi
|
|
... |
|
... |
823 |
By directly using the <strong>alsa</strong> audio driver.
|
823 |
By directly using the <strong>alsa</strong> audio driver.
|
824 |
</p>
|
824 |
</p>
|
825 |
</li>
|
825 |
</li>
|
826 |
</ul></div>
|
826 |
</ul></div>
|
827 |
<div class="paragraph"><p>What approach is used is decided by a parameter in the upmpdcli
|
827 |
<div class="paragraph"><p>What approach is used is decided by a parameter in the upmpdcli
|
828 |
configuration file: <tt>scplaymethod</tt> (see <a href="#Configuration">[Configuration]</a> further)</p></div>
|
828 |
configuration file: <code>scplaymethod</code> (see <a href="#Configuration">[Configuration]</a> further)</p></div>
|
829 |
<div class="paragraph"><p>Control:</p></div>
|
829 |
<div class="paragraph"><p>Control:</p></div>
|
830 |
<div class="ulist"><ul>
|
830 |
<div class="ulist"><ul>
|
831 |
<li>
|
831 |
<li>
|
832 |
<p>
|
832 |
<p>
|
833 |
If <strong>upmpdcli</strong> finds an executable <strong>sc2mpd</strong> command in the PATH when
|
833 |
If <strong>upmpdcli</strong> finds an executable <strong>sc2mpd</strong> command in the PATH when
|
|
... |
|
... |
848 |
through HTTP.
|
848 |
through HTTP.
|
849 |
</p>
|
849 |
</p>
|
850 |
</li>
|
850 |
</li>
|
851 |
<li>
|
851 |
<li>
|
852 |
<p>
|
852 |
<p>
|
853 |
If the <em><tt>mpd</tt></em> method is in use, <strong>upmpdcli</strong> instructs <strong>mpd</strong> to play the
|
853 |
If the <em><code>mpd</code></em> method is in use, <strong>upmpdcli</strong> instructs <strong>mpd</strong> to play the
|
854 |
URL for the <strong>sc2mpd</strong> output.
|
854 |
URL for the <strong>sc2mpd</strong> output.
|
855 |
</p>
|
855 |
</p>
|
856 |
</li>
|
856 |
</li>
|
857 |
</ul></div>
|
857 |
</ul></div>
|
858 |
<div class="paragraph"><p>When using <em><tt>mpd</tt></em> more bufferisation occurs and there may be a significant
|
858 |
<div class="paragraph"><p>When using <em><code>mpd</code></em> more bufferisation occurs and there may be a significant
|
859 |
delay (up to around 10S) between the time when Songcast is activated and
|
859 |
delay (up to around 10S) between the time when Songcast is activated and
|
860 |
the time sound appears.</p></div>
|
860 |
the time sound appears.</p></div>
|
861 |
<div class="dlist"><dl>
|
861 |
<div class="dlist"><dl>
|
862 |
<dt class="hdlist1">
|
862 |
<dt class="hdlist1">
|
863 |
NOTE
|
863 |
NOTE
|
864 |
</dt>
|
864 |
</dt>
|
865 |
<dd>
|
865 |
<dd>
|
866 |
<p>
|
866 |
<p>
|
867 |
When using <em><tt>mpd</tt></em>, from a Mac (24 bits audio) you need <strong>mpd 0.19</strong>,
|
867 |
When using <em><code>mpd</code></em>, from a Mac (24 bits audio) you need <strong>mpd 0.19</strong>,
|
868 |
configured with <tt>--disable-audiofile</tt>, else you risk producing high volume
|
868 |
configured with <code>--disable-audiofile</code>, else you risk producing high volume
|
869 |
noise. As Debian and Ubuntu tend to lag quite bit on MPD progresses, I
|
869 |
noise. As Debian and Ubuntu tend to lag quite bit on MPD progresses, I
|
870 |
have set up <a href="downloads.html#mpd">backport repositories</a> for
|
870 |
have set up <a href="downloads.html#mpd">backport repositories</a> for
|
871 |
appropriately configured recent mpd versions (currently 0.19.9), for
|
871 |
appropriately configured recent mpd versions (currently 0.19.9), for
|
872 |
Ubuntu, Debian i386/amd64 and Raspbian.
|
872 |
Ubuntu, Debian i386/amd64 and Raspbian.
|
873 |
</p>
|
873 |
</p>
|
874 |
</dd>
|
874 |
</dd>
|
875 |
</dl></div>
|
875 |
</dl></div>
|
876 |
<div class="paragraph"><p>Given the bufferisation and delay control issues when going through MPD,
|
876 |
<div class="paragraph"><p>Given the bufferisation and delay control issues when going through MPD,
|
877 |
only the <em><tt>alsa</tt></em> method is usable in multi-room configurations. Even with a
|
877 |
only the <em><code>alsa</code></em> method is usable in multi-room configurations. Even with a
|
878 |
single player, the <em><tt>mpd</tt></em> method will experience skips from time to
|
878 |
single player, the <em><code>mpd</code></em> method will experience skips from time to
|
879 |
time. The reasons are explained in the <a href="scmulti.html">multi-room</a>
|
879 |
time. The reasons are explained in the <a href="scmulti.html">multi-room</a>
|
880 |
page.</p></div>
|
880 |
page.</p></div>
|
881 |
</div>
|
881 |
</div>
|
882 |
</div>
|
882 |
</div>
|
883 |
<div class="sect1">
|
883 |
<div class="sect1">
|
|
... |
|
... |
885 |
<div class="sectionbody">
|
885 |
<div class="sectionbody">
|
886 |
<div class="paragraph"><p>There are packages available for Raspbian and Debian Wheezy i386 and amd64.</p></div>
|
886 |
<div class="paragraph"><p>There are packages available for Raspbian and Debian Wheezy i386 and amd64.</p></div>
|
887 |
<div class="paragraph"><p>So add the repositories:</p></div>
|
887 |
<div class="paragraph"><p>So add the repositories:</p></div>
|
888 |
<div class="literalblock">
|
888 |
<div class="literalblock">
|
889 |
<div class="content">
|
889 |
<div class="content">
|
890 |
<pre><tt>echo deb http://www.lesbonscomptes.com/upmpdcli/downloads/debian/ unstable main | sudo tee /etc/apt/sources.list.d/upmpdcli.list
|
890 |
<pre><code>echo deb http://www.lesbonscomptes.com/upmpdcli/downloads/debian/ unstable main | sudo tee /etc/apt/sources.list.d/upmpdcli.list
|
891 |
echo deb-src http://www.lesbonscomptes.com/upmpdcli/downloads/debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list
|
891 |
echo deb-src http://www.lesbonscomptes.com/upmpdcli/downloads/debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list
|
892 |
echo deb http://www.lesbonscomptes.com/upmpdcli/downloads/mpd-debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list
|
892 |
echo deb http://www.lesbonscomptes.com/upmpdcli/downloads/mpd-debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list
|
893 |
echo deb-src http://www.lesbonscomptes.com/upmpdcli/downloads/mpd-debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list</tt></pre>
|
893 |
echo deb-src http://www.lesbonscomptes.com/upmpdcli/downloads/mpd-debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list</code></pre>
|
894 |
</div></div>
|
894 |
</div></div>
|
895 |
<div class="paragraph"><p>Install (the mpd and libupnp versions in the repo have bug fixes):</p></div>
|
895 |
<div class="paragraph"><p>Install (the mpd and libupnp versions in the repo have bug fixes):</p></div>
|
896 |
<div class="literalblock">
|
896 |
<div class="literalblock">
|
897 |
<div class="content">
|
897 |
<div class="content">
|
898 |
<pre><tt>sudo apt-get update
|
898 |
<pre><code>sudo apt-get update
|
899 |
sudo apt-get install upmpdcli sc2mpd mpd libupnp6</tt></pre>
|
899 |
sudo apt-get install upmpdcli sc2mpd mpd libupnp6</code></pre>
|
900 |
</div></div>
|
900 |
</div></div>
|
901 |
<div class="paragraph"><p>And seed the next section for configuring.</p></div>
|
901 |
<div class="paragraph"><p>And see the next section for configuring.</p></div>
|
902 |
</div>
|
902 |
</div>
|
903 |
</div>
|
903 |
</div>
|
904 |
<div class="sect1">
|
904 |
<div class="sect1">
|
905 |
<h2 id="Configuration">Configuration</h2>
|
905 |
<h2 id="Configuration">Configuration</h2>
|
906 |
<div class="sectionbody">
|
906 |
<div class="sectionbody">
|
|
... |
|
... |
908 |
<h3 id="_on_the_receiver_side">On the Receiver side</h3>
|
908 |
<h3 id="_on_the_receiver_side">On the Receiver side</h3>
|
909 |
<div class="paragraph"><p>No configuration is necessary by default: if <strong>sc2mpd</strong> is present,
|
909 |
<div class="paragraph"><p>No configuration is necessary by default: if <strong>sc2mpd</strong> is present,
|
910 |
<strong>upmpdcli</strong> will advertise the Songcast capability, and any host with a
|
910 |
<strong>upmpdcli</strong> will advertise the Songcast capability, and any host with a
|
911 |
Songcast sender installed should be able to use it.</p></div>
|
911 |
Songcast sender installed should be able to use it.</p></div>
|
912 |
<div class="paragraph"><p>However, you can set a number of values in the upmpdcli configuration file
|
912 |
<div class="paragraph"><p>However, you can set a number of values in the upmpdcli configuration file
|
913 |
(you <strong>must</strong> set the <strong>upmpdcli</strong> <tt>-c</tt> option for <strong>sc2mpd</strong> to see them, the
|
913 |
(you <strong>must</strong> set the <strong>upmpdcli</strong> <code>-c</code> option for <strong>sc2mpd</strong> to see them, the
|
914 |
environment variable will not work):</p></div>
|
914 |
environment variable will not work):</p></div>
|
915 |
<div class="dlist"><dl>
|
915 |
<div class="dlist"><dl>
|
916 |
<dt class="hdlist1">
|
916 |
<dt class="hdlist1">
|
917 |
sclogfilename
|
917 |
sclogfilename
|
918 |
</dt>
|
918 |
</dt>
|
919 |
<dd>
|
919 |
<dd>
|
920 |
<p>
|
920 |
<p>
|
921 |
Name of the file which will receive <strong>sc2mpd</strong> log messages. <tt>stderr</tt> by
|
921 |
Name of the file which will receive <strong>sc2mpd</strong> log messages. <code>stderr</code> by
|
922 |
default. This <em>can’t be</em> the same file used by <strong>upmpdcli</strong>.
|
922 |
default. This <em>can’t be</em> the same file used by <strong>upmpdcli</strong>.
|
923 |
</p>
|
923 |
</p>
|
924 |
</dd>
|
924 |
</dd>
|
925 |
<dt class="hdlist1">
|
925 |
<dt class="hdlist1">
|
926 |
scloglevel
|
926 |
scloglevel
|
|
... |
|
... |
934 |
scplaymethod
|
934 |
scplaymethod
|
935 |
</dt>
|
935 |
</dt>
|
936 |
<dd>
|
936 |
<dd>
|
937 |
<p>
|
937 |
<p>
|
938 |
Used by <strong>upmpdcli</strong> and <strong>sc2mpd</strong>. This decides how audio is played, with 2
|
938 |
Used by <strong>upmpdcli</strong> and <strong>sc2mpd</strong>. This decides how audio is played, with 2
|
939 |
possible values, <em><tt>alsa</tt></em> or <em><tt>mpd</tt></em>. Using <em><tt>mpd</tt></em> is somewhat easier, but
|
939 |
possible values, <em><code>alsa</code></em> or <em><code>mpd</code></em>. Using <em><code>mpd</code></em> is somewhat easier, but
|
940 |
unusable in <a href="scmulti.html">multi-room</a> configurations, and you risk
|
940 |
unusable in <a href="scmulti.html">multi-room</a> configurations, and you risk
|
941 |
small drops even in single-player settings.
|
941 |
small drops even in single-player settings.
|
942 |
</p>
|
942 |
</p>
|
943 |
</dd>
|
943 |
</dd>
|
944 |
<dt class="hdlist1">
|
944 |
<dt class="hdlist1">
|
945 |
scalsadevice
|
945 |
scalsadevice
|
946 |
</dt>
|
946 |
</dt>
|
947 |
<dd>
|
947 |
<dd>
|
948 |
<p>
|
948 |
<p>
|
949 |
If the <em><tt>alsa</tt></em> method is set, the <tt>scalsadevice</tt>
|
949 |
If the <em><code>alsa</code></em> method is set, the <code>scalsadevice</code>
|
950 |
parameter defines the interface name. Use <tt>aplay -L</tt> to find the
|
950 |
parameter defines the interface name. Use <code>aplay -L</code> to find the
|
951 |
appropriate name. Also check that user <em><tt>upmpdcli</tt></em> belongs to the
|
951 |
appropriate name. Also check that user <em><code>upmpdcli</code></em> belongs to the
|
952 |
<em><tt>audio</tt></em> group.
|
952 |
<em><code>audio</code></em> group.
|
953 |
</p>
|
953 |
</p>
|
954 |
</dd>
|
954 |
</dd>
|
955 |
<dt class="hdlist1">
|
955 |
<dt class="hdlist1">
|
956 |
sccvttype
|
956 |
sccvttype
|
957 |
</dt>
|
957 |
</dt>
|
958 |
<dd>
|
958 |
<dd>
|
959 |
<p>
|
959 |
<p>
|
960 |
If the <em><tt>alsa</tt></em> play method is used, this defines the libsamplerate
|
960 |
If the <em><code>alsa</code></em> play method is used, this defines the libsamplerate
|
961 |
converter type. See <a href="http://www.mega-nerd.com/SRC/api_misc.html#Converters">http://www.mega-nerd.com/SRC/api_misc.html#Converters</a>.
|
961 |
converter type. See <a href="http://www.mega-nerd.com/SRC/api_misc.html#Converters">http://www.mega-nerd.com/SRC/api_misc.html#Converters</a>.
|
962 |
The default is to use SRC_CVT_FASTEST, resulting in around 24% CPU usage
|
962 |
The default is to use SRC_CVT_FASTEST, resulting in around 24% CPU usage
|
963 |
for sc2mpd processing a 16 bits stream on a Raspberry Pi 1. The value can
|
963 |
for sc2mpd processing a 16 bits stream on a Raspberry Pi 1. The value can
|
964 |
be specified either as a string (e.g SRC_SINC_FASTEST), or a value (e.g 2).
|
964 |
be specified either as a string (e.g SRC_SINC_FASTEST), or a value (e.g 2).
|
965 |
</p>
|
965 |
</p>
|
|
... |
|
... |
967 |
<dt class="hdlist1">
|
967 |
<dt class="hdlist1">
|
968 |
schttpport
|
968 |
schttpport
|
969 |
</dt>
|
969 |
</dt>
|
970 |
<dd>
|
970 |
<dd>
|
971 |
<p>
|
971 |
<p>
|
972 |
If the <em><tt>mpd</tt></em> method is set, this defines the HTTP port used by <strong>mpd</strong> to
|
972 |
If the <em><code>mpd</code></em> method is set, this defines the HTTP port used by <strong>mpd</strong> to
|
973 |
connect to <strong>sc2mpd</strong>. 8768 by default. This must be an available port on
|
973 |
connect to <strong>sc2mpd</strong>. 8768 by default. This must be an available port on
|
974 |
<tt>localhost</tt>, and it will only accept connections from <tt>localhost</tt>.
|
974 |
<code>localhost</code>, and it will only accept connections from <code>localhost</code>.
|
975 |
</p>
|
975 |
</p>
|
976 |
</dd>
|
976 |
</dd>
|
977 |
<dt class="hdlist1">
|
977 |
<dt class="hdlist1">
|
978 |
sc2mpd
|
978 |
sc2mpd
|
979 |
</dt>
|
979 |
</dt>
|
980 |
<dd>
|
980 |
<dd>
|
981 |
<p>
|
981 |
<p>
|
982 |
Used by <strong>upmpdcli</strong>. Path for the <strong>sc2mpd</strong> executable file
|
982 |
Used by <strong>upmpdcli</strong>. Path for the <strong>sc2mpd</strong> executable file
|
983 |
(e.g. <tt>/usr/local/bin/sc2mpd</tt>). Only useful if <strong>sc2mpd</strong> was not installed
|
983 |
(e.g. <code>/usr/local/bin/sc2mpd</code>). Only useful if <strong>sc2mpd</strong> was not installed
|
984 |
to a location in the executable $PATH set for the init scripts. Typically
|
984 |
to a location in the executable $PATH set for the init scripts. Typically
|
985 |
only <tt>/bin</tt> and <tt>/usr/bin</tt> are in there. This allows <strong>upmpdcli</strong> to find
|
985 |
only <code>/bin</code> and <code>/usr/bin</code> are in there. This allows <strong>upmpdcli</strong> to find
|
986 |
<strong>sc2mpd</strong> if it is not in the standard location.
|
986 |
<strong>sc2mpd</strong> if it is not in the standard location.
|
987 |
</p>
|
987 |
</p>
|
988 |
</dd>
|
988 |
</dd>
|
989 |
</dl></div>
|
989 |
</dl></div>
|
990 |
</div>
|
990 |
</div>
|
991 |
<div class="sect2">
|
991 |
<div class="sect2">
|
992 |
<h3 id="_on_the_sender_windows_mac_side">On the Sender (Windows/Mac) side</h3>
|
992 |
<h3 id="_on_the_sender_windows_mac_side">On the Sender (Windows/Mac) side</h3>
|
|
|
993 |
<div class="paragraph"><p>Not all versions of Songcast work well with sc2mpd. Lately, I have had good
|
|
|
994 |
luck with 4.4.190, but not 4.5.298. You will find
|
|
|
995 |
<a href="http://oss.linn.co.uk/Releases/Songcast/Davaar/">all the Songcast installers
|
|
|
996 |
here</a></p></div>
|
993 |
<div class="paragraph"><p>I could not get IP multicast to work with WIFI Receivers (the sound drops
|
997 |
<div class="paragraph"><p>I could not get IP multicast to work with WIFI Receivers (the sound drops
|
994 |
constantly).</p></div>
|
998 |
constantly).</p></div>
|
995 |
<div class="paragraph"><p>There are well-known problems with multicast and WIFI (see for example
|
999 |
<div class="paragraph"><p>There are well-known problems with multicast and WIFI (see for example
|
996 |
<a href="http://superuser.com/questions/730288/why-do-some-wifi-routers-block-multicast-packets-going-from-wired-to-wireless">this
|
1000 |
<a href="http://superuser.com/questions/730288/why-do-some-wifi-routers-block-multicast-packets-going-from-wired-to-wireless">this
|
997 |
superuser.com question</a>
|
1001 |
superuser.com question</a>
|
|
... |
|
... |
1051 |
<div class="paragraph"><p>Building the Openhome libraries is a bit of a black art, and the <strong>sc2mpd</strong>
|
1055 |
<div class="paragraph"><p>Building the Openhome libraries is a bit of a black art, and the <strong>sc2mpd</strong>
|
1052 |
source comes with an <em>ohbuild.sh</em> script which will try to clone the
|
1056 |
source comes with an <em>ohbuild.sh</em> script which will try to clone the
|
1053 |
Openhome Git repositories and build the libs:</p></div>
|
1057 |
Openhome Git repositories and build the libs:</p></div>
|
1054 |
<div class="literalblock">
|
1058 |
<div class="literalblock">
|
1055 |
<div class="content">
|
1059 |
<div class="content">
|
1056 |
<pre><tt>cd sc2mpd
|
1060 |
<pre><code>cd sc2mpd
|
1057 |
mkdir /my/place/for/openhome
|
1061 |
mkdir /my/place/for/openhome
|
1058 |
sh ohbuild.sh /my/place/for/openhome</tt></pre>
|
1062 |
sh ohbuild.sh /my/place/for/openhome</code></pre>
|
1059 |
</div></div>
|
1063 |
</div></div>
|
1060 |
<div class="paragraph"><p>Miscellaneous error messages will be displayed during the build. Hope for
|
1064 |
<div class="paragraph"><p>Miscellaneous error messages will be displayed during the build. Hope for
|
1061 |
the best…</p></div>
|
1065 |
the best…</p></div>
|
1062 |
<div class="paragraph"><p>When this is done, build <strong>sc2mpd</strong>, using the following commands inside the
|
1066 |
<div class="paragraph"><p>When this is done, build <strong>sc2mpd</strong>, using the following commands inside the
|
1063 |
<em>sc2mpd</em> directory:</p></div>
|
1067 |
<em>sc2mpd</em> directory:</p></div>
|
1064 |
<div class="literalblock">
|
1068 |
<div class="literalblock">
|
1065 |
<div class="content">
|
1069 |
<div class="content">
|
1066 |
<pre><tt>sh autogen.sh
|
1070 |
<pre><code>sh autogen.sh
|
1067 |
./configure --prefix=/usr --with-openhome=/my/place/for/openhome
|
1071 |
./configure --prefix=/usr --with-openhome=/my/place/for/openhome
|
1068 |
make
|
1072 |
make
|
1069 |
sudo make install</tt></pre>
|
1073 |
sudo make install</code></pre>
|
1070 |
</div></div>
|
1074 |
</div></div>
|
1071 |
<div class="paragraph"><p>The build uses static Openhome libraries, so you can move the executable to
|
1075 |
<div class="paragraph"><p>The build uses static Openhome libraries, so you can move the executable to
|
1072 |
another machine without needing the Openhome directory (don’t forget to
|
1076 |
another machine without needing the Openhome directory (don’t forget to
|
1073 |
install the <em>libmicrohttpd</em>, <em>libsamplerate</em> and <em>libasound</em> runtimes
|
1077 |
install the <em>libmicrohttpd</em>, <em>libsamplerate</em> and <em>libasound</em> runtimes
|
1074 |
though).</p></div>
|
1078 |
though).</p></div>
|
|
... |
|
... |
1086 |
</div>
|
1090 |
</div>
|
1087 |
</div>
|
1091 |
</div>
|
1088 |
<div id="footnotes"><hr /></div>
|
1092 |
<div id="footnotes"><hr /></div>
|
1089 |
<div id="footer">
|
1093 |
<div id="footer">
|
1090 |
<div id="footer-text">
|
1094 |
<div id="footer-text">
|
1091 |
Last updated 2015-07-27 10:46:37 CEST
|
1095 |
Last updated
|
|
|
1096 |
2015-11-15 19:36:12 CET
|
1092 |
</div>
|
1097 |
</div>
|
1093 |
</div>
|
1098 |
</div>
|
1094 |
</body>
|
1099 |
</body>
|
1095 |
</html>
|
1100 |
</html>
|