<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
On 7/8/15 12:47 AM, Ian Forrest wrote:<br>
<blockquote
cite="mid:CADekWg28p4Unu3tpcaXQSh93rp840DugC7O08+SzVrzGx8mXBg@mail.gmail.com"
type="cite">
<div dir="ltr">Hey all,
<div><br>
</div>
<div>I suspect that this is an easier question than I'm making
it; I ran linux forever before law school, but never got too
creative with it, so please forgive me if I'm missing
something obvious.</div>
<div><br>
</div>
<div>I am using a Beaglebone Black running Debian as the brains
of a stereo setup. I am running squeezelite (a software player
for the logitech media server), piping it into ecasound for
equalization and crossover filters, and finally sox for
dithered re-quantization so that everything can be sent out to
a dinky USB soundcard. This is all I plan on having the
Beaglebone do, at least for the time being. </div>
<div>
<div><br>
</div>
<div>I have a bash script that does all this, cobbled together
from a really great guide at <a moz-do-not-send="true"
href="http://rtaylor.sites.tru.ca/2013/06/25/digital-crossovereq-with-open-source-software-howto/">http://rtaylor.sites.tru.ca/2013/06/25/digital-crossovereq-with-open-source-software-howto/</a>
. With a couple anonymizing modifications, it looks
something like this:</div>
<div><span
id="docs-internal-guid-ac6b1fa7-6bdf-77e3-ae06-8552ede51cd9"><font
face="arial, helvetica, sans-serif">
<p dir="ltr"
style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span
style="color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap;background-color:transparent"><br>
</span></p>
<p dir="ltr"
style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span
style="color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap;background-color:transparent">#!/bin/sh</span></p>
<span
style="color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap;background-color:transparent">/home/debian/squeezelite
-o - -u vL -a ::32:0 -n Speakers -s 192.168.x.x |
ecasound -q -z:mixmode,sum -x -a:pre -f:s32_le,2,44100
-i:stdin -pf:/home/debian/ecasound/pre.ecp -o:loop,1
-a:woofer,fullrange -i:loop,1 -a:woofer
-pf:/home/debian/ecasound/woofer.ecp -chorder:1,2,0,0
-a:fullrange -pf:/home/debian/ecasound/fullrange.ecp
-chorder:0,0,1,2 -a:woofer,fullrange -f:f32_le,4,44100
-o:stdout | sox -q -c 4 -r 44100 -b 32 -e float -L -t
raw - -e signed -c 4 -b 16 -t alsa surround40:Device
dither -s</span></font></span></div>
<div><br>
</div>
<div>This works. ./squeezelite.sh runs and is off to the
races, makes pretty noises, etc.</div>
<div><br>
</div>
<div>The problem is daemonizing it and having it run at
startup. Something tells me this is due to failure to
understand scripting generally and pipes specifically. For
now, I have to start a putty session and run the script
myself. I have yet to find a good way to get it going
automatically.</div>
</div>
</div>
</blockquote>
...<snip><br>
<br>
Hi Ian,<br>
<br>
You haven't mentioned how it is failing. Is there an error
message?<br>
<br>
Taking a WAG, this may be as simple a PATHing difference between
interactive vs non-interactive users. Try adding the full path
names to <span
id="docs-internal-guid-ac6b1fa7-6bdf-77e3-ae06-8552ede51cd9"><font
face="arial, helvetica, sans-serif"><span
style="color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap;background-color:transparent">ecasound
and sox.<br>
<br>
<font face="arial, helvetica, sans-serif">--LnxGn<font
face="arial, helvetica, sans-serif">ome<br>
<br>
</font></font></span></font></span>
<br>
<br>
</body>
</html>