Lee
I am currently
working on an ALSA driver enhancement for a card which
actually contains two seemingly sample-locked ADCs. I'm making the second
ADC accessable via a second PCM interface attached to the card.
In general things work fine - under OSS emulaion I can open both (one as
/dev/dsp, the other as /dev/adsp). However, jackd doesn't seem to know
or care about the second pcm interface on the card and I can't find any
obvious way to tell jack about it. It seems suitable entries in .asoundrc
might help but it's not clear to me that this will work without xruns
(see
http://www.alsa-project.org/alsa-doc/doc-php/asoundrc.php).
Can jackd work with multiple PCMs from the same card, and if so, what's the
best way?
Well, does the hardware have a mechanism to stop and start them in sync?
I'll have to check this. The ADCs are independent in that they *can* be
operated concurrently with different parameters. However, AFAIK they both
operate off the same master clock signal and thus will sample simultaneously
if both are sampling at the same nominal rate. As to whether they can both
be *started* simultaneously in hardware I can't say at present. That may be
a stumbling block.
If so you could modify the driver to expose all the
channels as a big
multichannel PCM like I did with the emu10k1 driver.
Thanks for the pointer - I'll check it out; I looked in a few other drivers
for clues but obviously picked the wrong ones.
Regards
jonathan