Linux + MPD player + dsp crossover via ecasound

Status
Not open for further replies.
Hi, experts... I've been playing with this attempted setup for a couple weeks. Started with a project found at: Digital Crossover/EQ with Open-Source Software: HOWTO | Richard's Stuff

I've gotten part way, and have hit a brick wall getting ecasound to play nicely.

Soundcard: Turtle Beach Montego DDL (in 5.1 mode)
Linux build: Ubuntu, latest download two weeks ago.

MPD seems fine, but ecasound likes to crash and issue obscure error messages that google hasn't helped me with.

I've been a unix system admin and a tech support engineer for years, so that part doesn't bother me, but this sound stuff....

Any help or advice is welcomed!
 
Basically, I've been getting two different errors.

"broken pipe opening output" and
(sorry, I'm downstairs, and the linux box is off), something about 4 not being in the sound card's capability.

I can play the test wav out all 6 channels, so I know the card is ok.... I'll get the errors to you tomorrow.
 
Might make note if it's alsa, ecasound or mpd that has the error as you step through the tests in the instructions. Also make sure that mpd --version reports pipe as an output plugin. Perhaps you might have to remove "jack" as a mpd plugin as ecasound reports issues with it.
 
no jack?

Thanks for the quick turnarounds!

As far as I know, I'm not using Jack at all. The problem appears to be somewhere in the interface between ecasound and alsa.

When I run this simple one, it does work fine:
ecasound -tl -i chan_labels_6.wav -f:16,6,44100 -eadb:-24 -o alsa,surround51:CMI8768When I run the more complex test, using something more like this, it doesn't:

ecasound -z:mixmode,sum -x \ -a😛re -i:mysong.mp3 -pf😛re.ecp -o:loop,1 \ -a:woofer,tweeter -i:loop,1 \ -a:woofer -pf:woofer.ecp -chorder:1,2,0,0 \ -a:tweeter -pf:tweeter.ecp -chorder:0,0,1,2 \ -a:woofer,tweeter -f:16,4,44100 -o:alsa,surround51:CMI8768All this is without MPD, so I don't think that's the issue. MPD plays fine with a stripped down command-set. I have tried emptying and replacing the specified plugins, and that doesn't appear to be the problem

thanks!
 
Did you try saving to a file, instead of alsa, with the more complex ecasound command? -o myoutput.wav ? If that failed, then check file permissions if that passed then i would consider adding the user to the audio group.
 
This morning's test:
# test for ecasound and stuff
ecasound -z:mixmode,sum -x \
-a pre -i😀ownloads/chan_labels_4.wav -o:loop,1 -a:woofer,tweeter -i:loop,1 -a:w oofer -pf:/etc/woofer.ecp -chorder:1,2,0,0 -a:tweeter -pf:/etc/tweeter.ecp -chor der:0,0,1,2 -a:woofer,tweeter -f:16,4,44100 -o:testoutput.mp3

The input file has "left tweeter, right tweeter, left woofer, right woofer". The output file has "left woofer, right woofer, and then silence. Ecasound crashed at the end, as always.

This command:

# test for ecasound and stuff
ecasound -z:mixmode,sum -x \
-a pre -i😀ownloads/chan_labels_4.wav -o:loop,1 -a:woofer,tweeter -i:loop,1 -a:woofer -pf:/etc/woofer.ecp -chorder:1,2,0,0 -a:tweeter -pf:/etc/tweeter.ecp -chorder:0,0,1,2 -a:woofer,tweeter -f:16,4,44100 -o:alsa,surround51:CMI8768

yields this output message:

(eca-chainsetup-parser) Enabling 'sum' mixmode.
(eca-chainsetup-parser) Truncating outputs (overwrite-mode).
(eca-chainsetup) Chainsetup "untitled-chainsetup"
(eca-chainsetup) "rtlowlatency" buffering mode selected.
(eca-chainsetup) NOTE: using existing audio parameters -f:s16_le,4,44100 for
... object 'Downloads/chan_labels_4.wav' (tried to open with
... -f:s16_le,2,44100).
(eca-chainsetup) Opened input "Downloads/chan_labels_4.wav", mode "read".
... Format: s16_le, channels 4, srate 44100, interleaved (locked params).
(eca-chainsetup) NOTE: using existing audio parameters -f:f32_le,2,44100 for
... object 'loop' (tried to open with -f:s16_le,2,44100).
(eca-chainsetup) Opened input "loop", mode "read". Format: f32_le, channels
... 2, srate 44100, interleaved (locked params).
(eca-chainsetup) Opened input "loop", mode "read". Format: f32_le, channels
... 2, srate 44100, interleaved (locked params).
ERROR: Connecting chainsetup failed: "Enabling chainsetup: AUDIOIO-ALSA:
... Channel count 4 is out of range!"

this is where I'm stuck..

thanks

jay
 
At present, yes, I wish to output 4 channels to the 6 channel device. Eventually, I need to output a full-spectrum feed to the last two channels to feed the rest of the house... I had assumed that "out of range" meant, "too big a number". I think I tried six, but will try again:

Hm.. I'm still downstairs, and about to leave to measure for a remodeling project (my wife's business), but that appeared to work. No error messages at all. Need to listen to the ports and see what comes out.

Thanks for leading me in what looks like the right direction!
 
Status
Not open for further replies.