|
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.9" />
|
6 |
<meta name="generator" content="AsciiDoc 8.6.7" />
|
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 |
.monospaced, code, pre {
|
90 |
pre {
|
91 |
font-family: "Courier New", Courier, monospace;
|
|
|
92 |
font-size: inherit;
|
|
|
93 |
color: navy;
|
|
|
94 |
padding: 0;
|
91 |
padding: 0;
|
95 |
margin: 0;
|
92 |
margin: 0;
|
96 |
}
|
|
|
97 |
pre {
|
|
|
98 |
white-space: pre-wrap;
|
|
|
99 |
}
|
93 |
}
|
100 |
|
94 |
|
101 |
#author {
|
95 |
#author {
|
102 |
color: #527bbd;
|
96 |
color: #527bbd;
|
103 |
font-weight: bold;
|
97 |
font-weight: bold;
|
|
... |
|
... |
223 |
border-left: 3px solid #dddddd;
|
217 |
border-left: 3px solid #dddddd;
|
224 |
padding-left: 0.5em;
|
218 |
padding-left: 0.5em;
|
225 |
}
|
219 |
}
|
226 |
|
220 |
|
227 |
div.imageblock div.content { padding-left: 0; }
|
221 |
div.imageblock div.content { padding-left: 0; }
|
228 |
span.image img { border-style: none; vertical-align: text-bottom; }
|
222 |
span.image img { border-style: none; }
|
229 |
a.image:visited { color: white; }
|
223 |
a.image:visited { color: white; }
|
230 |
|
224 |
|
231 |
dl {
|
225 |
dl {
|
232 |
margin-top: 0.8em;
|
226 |
margin-top: 0.8em;
|
233 |
margin-bottom: 0.8em;
|
227 |
margin-bottom: 0.8em;
|
|
... |
|
... |
419 |
/*
|
413 |
/*
|
420 |
* xhtml11 specific
|
414 |
* xhtml11 specific
|
421 |
*
|
415 |
*
|
422 |
* */
|
416 |
* */
|
423 |
|
417 |
|
|
|
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 |
}
|
456 |
|
462 |
|
457 |
table.tableblock {
|
463 |
table.tableblock {
|
458 |
margin-top: 1.0em;
|
464 |
margin-top: 1.0em;
|
459 |
margin-bottom: 1.5em;
|
465 |
margin-bottom: 1.5em;
|
460 |
}
|
466 |
}
|
|
... |
|
... |
531 |
}
|
537 |
}
|
532 |
|
538 |
|
533 |
@media print {
|
539 |
@media print {
|
534 |
body.manpage div#toc { display: none; }
|
540 |
body.manpage div#toc { display: none; }
|
535 |
}
|
541 |
}
|
536 |
|
|
|
537 |
|
|
|
538 |
</style>
|
542 |
</style>
|
539 |
<script type="text/javascript">
|
543 |
<script type="text/javascript">
|
540 |
/*<![CDATA[*/
|
544 |
/*<![CDATA[*/
|
541 |
var asciidoc = { // Namespace.
|
545 |
var asciidoc = { // Namespace.
|
542 |
|
546 |
|
|
... |
|
... |
747 |
<a href="#whatis_songcast">further</a> for more explanations about what this does.</p></div>
|
751 |
<a href="#whatis_songcast">further</a> for more explanations about what this does.</p></div>
|
748 |
<div class="paragraph"><p><strong>sc2mpd</strong> has mostly been tested with 16 bits sound but a recent change
|
752 |
<div class="paragraph"><p><strong>sc2mpd</strong> has mostly been tested with 16 bits sound but a recent change
|
749 |
seems to have fixed 24 bits sound, so this should be now usable for
|
753 |
seems to have fixed 24 bits sound, so this should be now usable for
|
750 |
MACs. <strong><em>This needs mpd 0.19 on the renderer. Do not try 24 bits sound with
|
754 |
MACs. <strong><em>This needs mpd 0.19 on the renderer. Do not try 24 bits sound with
|
751 |
mpd 0.18 !</em></strong> (or turn the volume very low…). Using Songcast from a Mac (24
|
755 |
mpd 0.18 !</em></strong> (or turn the volume very low…). Using Songcast from a Mac (24
|
752 |
bits audio) needs <strong>mpd 0.19</strong>, configured with <code>--disable-audiofile</code>.
|
756 |
bits audio) needs <strong>mpd 0.19</strong>, configured with <tt>--disable-audiofile</tt>.
|
753 |
As Debian and Ubuntu tend to lag quite bit on MPD progresses, I have set up
|
757 |
As Debian and Ubuntu tend to lag quite bit on MPD progresses, I have set up
|
754 |
<a href="downloads.html#mpd">backport repositories</a> for recent mpd versions
|
758 |
<a href="downloads.html#mpd">backport repositories</a> for recent mpd versions
|
755 |
(currently 0.19.9), for Ubuntu, Debian i386/amd64 and Raspbian.</p></div>
|
759 |
(currently 0.19.9), for Ubuntu, Debian i386/amd64 and Raspbian.</p></div>
|
756 |
<div class="paragraph"><p>And to conclude the misc warnings section: <strong>there is no software volume
|
760 |
<div class="paragraph"><p>And to conclude the misc warnings section: <strong>there is no software volume
|
757 |
control</strong> of the Songcast Receivers for now: use either a local mixer or the
|
761 |
control</strong> of the Songcast Receivers for now: use either a local mixer or the
|
|
... |
|
... |
822 |
<strong>mpd</strong> will play the stream.
|
826 |
<strong>mpd</strong> will play the stream.
|
823 |
</p>
|
827 |
</p>
|
824 |
</li>
|
828 |
</li>
|
825 |
<li>
|
829 |
<li>
|
826 |
<p>
|
830 |
<p>
|
827 |
By directly using the <strong>alsa</strong> audio driver. <strong><em>This only works with 16
|
831 |
By directly using the <strong>alsa</strong> audio driver.
|
828 |
bits sound for now (so only with a Windows sender, no Macs allowed)</em></strong>
|
|
|
829 |
</p>
|
832 |
</p>
|
830 |
</li>
|
833 |
</li>
|
831 |
</ul></div>
|
834 |
</ul></div>
|
832 |
<div class="paragraph"><p>What approach is used is decided by a parameter in the upmpdcli
|
835 |
<div class="paragraph"><p>What approach is used is decided by a parameter in the upmpdcli
|
833 |
configuration file: <code>scplaymethod</code> (see <a href="#Configuration">[Configuration]</a> further)</p></div>
|
836 |
configuration file: <tt>scplaymethod</tt> (see <a href="#Configuration">[Configuration]</a> further)</p></div>
|
834 |
<div class="paragraph"><p>Control:</p></div>
|
837 |
<div class="paragraph"><p>Control:</p></div>
|
835 |
<div class="ulist"><ul>
|
838 |
<div class="ulist"><ul>
|
836 |
<li>
|
839 |
<li>
|
837 |
<p>
|
840 |
<p>
|
838 |
If <strong>upmpdcli</strong> finds an executable <strong>sc2mpd</strong> command in the PATH when
|
841 |
If <strong>upmpdcli</strong> finds an executable <strong>sc2mpd</strong> command in the PATH when
|
|
... |
|
... |
853 |
through HTTP.
|
856 |
through HTTP.
|
854 |
</p>
|
857 |
</p>
|
855 |
</li>
|
858 |
</li>
|
856 |
<li>
|
859 |
<li>
|
857 |
<p>
|
860 |
<p>
|
858 |
If the <em><code>mpd</code></em> method is in use, <strong>upmpdcli</strong> instructs <strong>mpd</strong> to play the
|
861 |
If the <em><tt>mpd</tt></em> method is in use, <strong>upmpdcli</strong> instructs <strong>mpd</strong> to play the
|
859 |
URL for the <strong>sc2mpd</strong> output.
|
862 |
URL for the <strong>sc2mpd</strong> output.
|
860 |
</p>
|
863 |
</p>
|
861 |
</li>
|
864 |
</li>
|
862 |
</ul></div>
|
865 |
</ul></div>
|
863 |
<div class="paragraph"><p>When using <em><code>mpd</code></em> more bufferisation occurs and there may be a significant
|
866 |
<div class="paragraph"><p>When using <em><tt>mpd</tt></em> more bufferisation occurs and there may be a significant
|
864 |
delay (up to around 10S) between the time when Songcast is activated and
|
867 |
delay (up to around 10S) between the time when Songcast is activated and
|
865 |
the time sound appears.</p></div>
|
868 |
the time sound appears.</p></div>
|
866 |
<div class="paragraph"><p>Given the bufferisation and delay control issues when going through MPD,
|
869 |
<div class="paragraph"><p>Given the bufferisation and delay control issues when going through MPD,
|
867 |
only the <em><code>alsa</code></em> method is usable in multi-room configurations. Even with a
|
870 |
only the <em><tt>alsa</tt></em> method is usable in multi-room configurations. Even with a
|
868 |
single player, the <em><code>mpd</code></em> method will experience skips from time to
|
871 |
single player, the <em><tt>mpd</tt></em> method will experience skips from time to
|
869 |
time. The reasons are explained in the <a href="scmulti.html">multi-room</a>
|
872 |
time. The reasons are explained in the <a href="scmulti.html">multi-room</a>
|
870 |
page.</p></div>
|
873 |
page.</p></div>
|
871 |
</div>
|
874 |
</div>
|
872 |
</div>
|
875 |
</div>
|
873 |
<div class="sect1">
|
876 |
<div class="sect1">
|
|
... |
|
... |
875 |
<div class="sectionbody">
|
878 |
<div class="sectionbody">
|
876 |
<div class="paragraph"><p>There are packages available for Raspbian and Debian Wheezy i386 and amd64.</p></div>
|
879 |
<div class="paragraph"><p>There are packages available for Raspbian and Debian Wheezy i386 and amd64.</p></div>
|
877 |
<div class="paragraph"><p>So add the repositories:</p></div>
|
880 |
<div class="paragraph"><p>So add the repositories:</p></div>
|
878 |
<div class="literalblock">
|
881 |
<div class="literalblock">
|
879 |
<div class="content">
|
882 |
<div class="content">
|
880 |
<pre><code>echo deb http://www.lesbonscomptes.com/upmpdcli/downloads/debian/ unstable main | sudo tee /etc/apt/sources.list.d/upmpdcli.list
|
883 |
<pre><tt>echo deb http://www.lesbonscomptes.com/upmpdcli/downloads/debian/ unstable main | sudo tee /etc/apt/sources.list.d/upmpdcli.list
|
881 |
echo deb-src http://www.lesbonscomptes.com/upmpdcli/downloads/debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list
|
884 |
echo deb-src http://www.lesbonscomptes.com/upmpdcli/downloads/debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list
|
882 |
echo deb http://www.lesbonscomptes.com/upmpdcli/downloads/mpd-debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list
|
885 |
echo deb http://www.lesbonscomptes.com/upmpdcli/downloads/mpd-debian/ unstable main | sudo tee -a /etc/apt/sources.list.d/upmpdcli.list
|
883 |
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>
|
886 |
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>
|
884 |
</div></div>
|
887 |
</div></div>
|
885 |
<div class="paragraph"><p>Install (the mpd and libupnp versions in the repo have bug fixes):</p></div>
|
888 |
<div class="paragraph"><p>Install (the mpd and libupnp versions in the repo have bug fixes):</p></div>
|
886 |
<div class="literalblock">
|
889 |
<div class="literalblock">
|
887 |
<div class="content">
|
890 |
<div class="content">
|
888 |
<pre><code>sudo apt-get update
|
891 |
<pre><tt>sudo apt-get update
|
889 |
sudo apt-get install upmpdcli sc2mpd mpd libupnp6</code></pre>
|
892 |
sudo apt-get install upmpdcli sc2mpd mpd libupnp6</tt></pre>
|
890 |
</div></div>
|
893 |
</div></div>
|
891 |
<div class="paragraph"><p>And seed the next section for configuring.</p></div>
|
894 |
<div class="paragraph"><p>And seed the next section for configuring.</p></div>
|
892 |
</div>
|
895 |
</div>
|
893 |
</div>
|
896 |
</div>
|
894 |
<div class="sect1">
|
897 |
<div class="sect1">
|
|
... |
|
... |
898 |
<h3 id="_on_the_receiver_side">On the Receiver side</h3>
|
901 |
<h3 id="_on_the_receiver_side">On the Receiver side</h3>
|
899 |
<div class="paragraph"><p>No configuration is necessary by default: if <strong>sc2mpd</strong> is present,
|
902 |
<div class="paragraph"><p>No configuration is necessary by default: if <strong>sc2mpd</strong> is present,
|
900 |
<strong>upmpdcli</strong> will advertise the Songcast capability, and any host with a
|
903 |
<strong>upmpdcli</strong> will advertise the Songcast capability, and any host with a
|
901 |
Songcast sender installed should be able to use it.</p></div>
|
904 |
Songcast sender installed should be able to use it.</p></div>
|
902 |
<div class="paragraph"><p>However, you can set a number of values in the upmpdcli configuration file
|
905 |
<div class="paragraph"><p>However, you can set a number of values in the upmpdcli configuration file
|
903 |
(you <strong>must</strong> set the <strong>upmpdcli</strong> <code>-c</code> option for <strong>sc2mpd</strong> to see them, the
|
906 |
(you <strong>must</strong> set the <strong>upmpdcli</strong> <tt>-c</tt> option for <strong>sc2mpd</strong> to see them, the
|
904 |
environment variable will not work):</p></div>
|
907 |
environment variable will not work):</p></div>
|
905 |
<div class="dlist"><dl>
|
908 |
<div class="dlist"><dl>
|
|
|
909 |
<dt class="hdlist1">
|
|
|
910 |
sclogfilename
|
|
|
911 |
</dt>
|
|
|
912 |
<dd>
|
|
|
913 |
<p>
|
|
|
914 |
Name of the file which will receive <strong>sc2mpd</strong> log messages. <tt>stderr</tt> by
|
|
|
915 |
default. This <em>can’t be</em> the same file used by <strong>upmpdcli</strong>.
|
|
|
916 |
</p>
|
|
|
917 |
</dd>
|
|
|
918 |
<dt class="hdlist1">
|
|
|
919 |
scloglevel
|
|
|
920 |
</dt>
|
|
|
921 |
<dd>
|
|
|
922 |
<p>
|
|
|
923 |
Log verbosity.
|
|
|
924 |
</p>
|
|
|
925 |
</dd>
|
906 |
<dt class="hdlist1">
|
926 |
<dt class="hdlist1">
|
907 |
scplaymethod
|
927 |
scplaymethod
|
908 |
</dt>
|
928 |
</dt>
|
909 |
<dd>
|
929 |
<dd>
|
910 |
<p>
|
930 |
<p>
|
911 |
This decides how audio is played, with 2 possible
|
931 |
Used by <strong>upmpdcli</strong> and <strong>sc2mpd</strong>. This decides how audio is played, with 2
|
912 |
values, <em><code>alsa</code></em> or <em><code>mpd</code></em>. Using <em><code>mpd</code></em> is somewhat easier, but
|
932 |
possible values, <em><tt>alsa</tt></em> or <em><tt>mpd</tt></em>. Using <em><tt>mpd</tt></em> is somewhat easier, but
|
913 |
unusable in <a href="scmulti.html">multi-room</a> configurations, and you risk
|
933 |
unusable in <a href="scmulti.html">multi-room</a> configurations, and you risk
|
914 |
small drops even in single-player settings.
|
934 |
small drops even in single-player settings.
|
915 |
</p>
|
935 |
</p>
|
916 |
</dd>
|
936 |
</dd>
|
917 |
<dt class="hdlist1">
|
937 |
<dt class="hdlist1">
|
918 |
scalsadevice
|
938 |
scalsadevice
|
919 |
</dt>
|
939 |
</dt>
|
920 |
<dd>
|
940 |
<dd>
|
921 |
<p>
|
941 |
<p>
|
922 |
If the <em><code>alsa</code></em> method is set, the <code>scalsadevice</code>
|
942 |
If the <em><tt>alsa</tt></em> method is set, the <tt>scalsadevice</tt>
|
923 |
parameter defines the interface name. Use <code>aplay -L</code> to find the
|
943 |
parameter defines the interface name. Use <tt>aplay -L</tt> to find the
|
924 |
appropriate name. Also check that user <em><code>upmpdcli</code></em> belongs to the
|
944 |
appropriate name. Also check that user <em><tt>upmpdcli</tt></em> belongs to the
|
925 |
<em><code>audio</code></em> group.
|
945 |
<em><tt>audio</tt></em> group.
|
926 |
</p>
|
946 |
</p>
|
927 |
</dd>
|
947 |
</dd>
|
928 |
<dt class="hdlist1">
|
948 |
<dt class="hdlist1">
|
929 |
sclogfilename
|
949 |
sccvttype
|
930 |
</dt>
|
950 |
</dt>
|
931 |
<dd>
|
951 |
<dd>
|
932 |
<p>
|
952 |
<p>
|
933 |
Name of the file which will receive <strong>sc2mpd</strong> log messages. <code>stderr</code> by
|
953 |
If the <em><tt>alsa</tt></em> play method is used, this defines the libsamplerate
|
934 |
default. This <em>can’t be</em> the same file used by <strong>upmpdcli</strong>.
|
954 |
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>.
|
935 |
</p>
|
955 |
The default is to use SRC_CVT_FASTEST, resulting in around 24% CPU usage
|
936 |
</dd>
|
956 |
for sc2mpd processing a 16 bits stream on a Raspberry Pi 1. The value can
|
937 |
<dt class="hdlist1">
|
957 |
be specified either as a string (e.g SRC_SINC_FASTEST), or a value (e.g 2).
|
938 |
scloglevel
|
|
|
939 |
</dt>
|
|
|
940 |
<dd>
|
|
|
941 |
<p>
|
|
|
942 |
Log verbosity.
|
|
|
943 |
</p>
|
958 |
</p>
|
944 |
</dd>
|
959 |
</dd>
|
945 |
<dt class="hdlist1">
|
960 |
<dt class="hdlist1">
|
946 |
schttpport
|
961 |
schttpport
|
947 |
</dt>
|
962 |
</dt>
|
948 |
<dd>
|
963 |
<dd>
|
949 |
<p>
|
964 |
<p>
|
950 |
If the <em><code>mpd</code></em> method is set, this defines the HTTP port used by <strong>mpd</strong> to
|
965 |
If the <em><tt>mpd</tt></em> method is set, this defines the HTTP port used by <strong>mpd</strong> to
|
951 |
connect to <strong>sc2mpd</strong>. 8768 by default. This must be an available port on
|
966 |
connect to <strong>sc2mpd</strong>. 8768 by default. This must be an available port on
|
952 |
<code>localhost</code>, and it will only accept connections from <code>localhost</code>.
|
967 |
<tt>localhost</tt>, and it will only accept connections from <tt>localhost</tt>.
|
953 |
</p>
|
968 |
</p>
|
954 |
</dd>
|
969 |
</dd>
|
955 |
<dt class="hdlist1">
|
970 |
<dt class="hdlist1">
|
956 |
sc2mpd
|
971 |
sc2mpd
|
957 |
</dt>
|
972 |
</dt>
|
958 |
<dd>
|
973 |
<dd>
|
959 |
<p>
|
974 |
<p>
|
960 |
Path for the <strong>sc2mpd</strong> executable file (e.g. <code>/usr/local/bin/sc2mpd</code>). Only
|
975 |
Used by <strong>upmpdcli</strong>. Path for the <strong>sc2mpd</strong> executable file
|
961 |
useful if <strong>sc2mpd</strong> was not installed to a location in the executable $PATH
|
976 |
(e.g. <tt>/usr/local/bin/sc2mpd</tt>). Only useful if <strong>sc2mpd</strong> was not installed
|
962 |
set for the init scripts. Typically only <code>/bin</code> and <code>/usr/bin</code> are in
|
977 |
to a location in the executable $PATH set for the init scripts. Typically
|
963 |
there. This allows <strong>upmpdcli</strong> to find <strong>sc2mpd</strong> if it is not in the standard
|
978 |
only <tt>/bin</tt> and <tt>/usr/bin</tt> are in there. This allows <strong>upmpdcli</strong> to find
|
964 |
location.
|
979 |
<strong>sc2mpd</strong> if it is not in the standard location.
|
965 |
</p>
|
980 |
</p>
|
966 |
</dd>
|
981 |
</dd>
|
967 |
</dl></div>
|
982 |
</dl></div>
|
968 |
</div>
|
983 |
</div>
|
969 |
<div class="sect2">
|
984 |
<div class="sect2">
|
|
... |
|
... |
1029 |
<div class="paragraph"><p>Building the Openhome libraries is a bit of a black art, and the <strong>sc2mpd</strong>
|
1044 |
<div class="paragraph"><p>Building the Openhome libraries is a bit of a black art, and the <strong>sc2mpd</strong>
|
1030 |
source comes with an <em>ohbuild.sh</em> script which will try to clone the
|
1045 |
source comes with an <em>ohbuild.sh</em> script which will try to clone the
|
1031 |
Openhome Git repositories and build the libs:</p></div>
|
1046 |
Openhome Git repositories and build the libs:</p></div>
|
1032 |
<div class="literalblock">
|
1047 |
<div class="literalblock">
|
1033 |
<div class="content">
|
1048 |
<div class="content">
|
1034 |
<pre><code>cd sc2mpd
|
1049 |
<pre><tt>cd sc2mpd
|
1035 |
mkdir /my/place/for/openhome
|
1050 |
mkdir /my/place/for/openhome
|
1036 |
sh ohbuild.sh /my/place/for/openhome</code></pre>
|
1051 |
sh ohbuild.sh /my/place/for/openhome</tt></pre>
|
1037 |
</div></div>
|
1052 |
</div></div>
|
1038 |
<div class="paragraph"><p>Miscellaneous error messages will be displayed during the build. Hope for
|
1053 |
<div class="paragraph"><p>Miscellaneous error messages will be displayed during the build. Hope for
|
1039 |
the best…</p></div>
|
1054 |
the best…</p></div>
|
1040 |
<div class="paragraph"><p>When this is done, build <strong>sc2mpd</strong>, using the following commands inside the
|
1055 |
<div class="paragraph"><p>When this is done, build <strong>sc2mpd</strong>, using the following commands inside the
|
1041 |
<em>sc2mpd</em> directory:</p></div>
|
1056 |
<em>sc2mpd</em> directory:</p></div>
|
1042 |
<div class="literalblock">
|
1057 |
<div class="literalblock">
|
1043 |
<div class="content">
|
1058 |
<div class="content">
|
1044 |
<pre><code>sh autogen.sh
|
1059 |
<pre><tt>sh autogen.sh
|
1045 |
./configure --prefix=/usr --with-openhome=/my/place/for/openhome
|
1060 |
./configure --prefix=/usr --with-openhome=/my/place/for/openhome
|
1046 |
make
|
1061 |
make
|
1047 |
sudo make install</code></pre>
|
1062 |
sudo make install</tt></pre>
|
1048 |
</div></div>
|
1063 |
</div></div>
|
1049 |
<div class="paragraph"><p>The build uses static Openhome libraries, so you can move the executable to
|
1064 |
<div class="paragraph"><p>The build uses static Openhome libraries, so you can move the executable to
|
1050 |
another machine without needing the Openhome directory (don’t forget to
|
1065 |
another machine without needing the Openhome directory (don’t forget to
|
1051 |
install the <em>libmicrohttpd</em>, <em>libsamplerate</em> and <em>libasound</em> runtimes
|
1066 |
install the <em>libmicrohttpd</em>, <em>libsamplerate</em> and <em>libasound</em> runtimes
|
1052 |
though).</p></div>
|
1067 |
though).</p></div>
|
|
... |
|
... |
1064 |
</div>
|
1079 |
</div>
|
1065 |
</div>
|
1080 |
</div>
|
1066 |
<div id="footnotes"><hr /></div>
|
1081 |
<div id="footnotes"><hr /></div>
|
1067 |
<div id="footer">
|
1082 |
<div id="footer">
|
1068 |
<div id="footer-text">
|
1083 |
<div id="footer-text">
|
1069 |
Last updated 2015-07-19 18:32:36 CEST
|
1084 |
Last updated 2015-07-27 09:57:59 CEST
|
1070 |
</div>
|
1085 |
</div>
|
1071 |
</div>
|
1086 |
</div>
|
1072 |
</body>
|
1087 |
</body>
|
1073 |
</html>
|
1088 |
</html>
|