hi *!
i'd like to use the rear outs of my sblive platinum with jack.
the following works:
# aplay some.wav -Dfront &
# aplay someother.wav -Drear
both signals end up at my mixer as expected, so it seems the devices are independent.
front is hw:0,0 which is a duplex device. rear is hw:0,3 and is playback only.
first and all-important question: are the front and rear out pcm devices synced in hardware? i suppose so, otherwise they would be pretty much useless. (if it turns out they aren't, let me know and ignore the rest of this posting :( )
to use all four outs with jack, i dug out some old asoundrc hack that takashi and jaroslav showed me a while ago:
// combine two devices into one pcm.multi { type multi; slaves.a.pcm "hw:0,0"; slaves.a.channels 2; slaves.b.pcm "hw:0,3"; slaves.b.channels 2; bindings.0.slave a; bindings.0.channel 0; bindings.1.slave a; bindings.1.channel 1; bindings.2.slave b; bindings.2.channel 0; bindings.3.slave b; bindings.3.channel 1; }
ctl.multi { type hw; card 0; }
// somehow this device is not continous in memory and thus not mmap()able. jack wants mmap access, and this routing trick should help:
pcm.ttable { type route; slave.pcm "multi"; ttable.0.0 1; ttable.1.1 1; ttable.2.2 1; ttable.3.3 1; }
ctl.ttable { type hw; card 0; }
ok. now i can do # jackstart -d alsa -d ttable -P and i get 4 outs.
3 problems remain:
* no sound from the rear outs when used with jack in this way :(
* qjackctl goes all haywire with this device: xruns galore. all is well when i don't use qjackctl and start jackd from the command line, so it might be a qjackctl problem, but i thought i'd mention it anyway - maybe the ttable device is not really kosher...
* no input from the first two channels.
jack somehow assumes that either all or no channels are duplex. if i don't use the -P (or non-duplex playback only) flag, it says, "...
[EMAIL PROTECTED]:~> jackstart -d alsa -d ttable
back from read, ret = 1 errno == Invalid argument
jackd 0.94.3
[...]
creating alsa driver ... ttable|ttable|1024|2|48000|0|0|nomon|swmeter|rt|32bit
ALSA lib pcm_hw.c:1055:(snd_pcm_hw_open) open /dev/snd/pcmC0D3c failed: No such device
jackstart: pcm.c:689: snd_pcm_nonblock: Assertion `pcm' failed.
Aborted
...", apparently trying to find a capture device for channels 2 and 3.
is there a way to fool jack into believing all are duplex with some more asoundrc magic? ideally, those two bogus ins would produce silence, but i don't really care, i don't connect them anyway.
thanks in advance,
jörn
-- "I never use EQ, never, never, never. I previously used to use mic positioning but I've even given up on that too." - Jezar on http://www.audiomelody.com
Jörn Nettingsmeier Kurfürstenstr 49, 45138 Essen, Germany http://spunk.dnsalias.org (my server) http://www.linuxaudiodev.org (Linux Audio Developers)
------------------------------------------------------- The SF.Net email is sponsored by EclipseCon 2004 Premiere Conference on Open Tools Development and Integration See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. http://www.eclipsecon.org/osdn _______________________________________________ Alsa-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-devel