Subject: Re: [ecasound] ecamegapedal, full-duplex, usb audio
From: Kai Vehmanen (k_AT_eca.cx)
Date: Wed Sep 11 2002 - 01:22:44 EEST
On Mon, 9 Sep 2002, Daniel Barlow wrote:
> and so forth - in fact, i even wrote a short C program to test the
> dongle in full duplex mode (can post it if that helps)
> This is a full-duplex-capable device. I can't see (using strace)
> anywhere in ecamegapedal that it's calling the SNDCTL_DSP_SETDUPLEX
> ioctl, though I may be stracing the wrong thing.
The root of the problem is that there's no one unified API to use
full-duplex in OSS/free drivers. Many OSS/free (ie. the ones that come
with standard pre-2.5 Linux kernel) don't support full-duplex at all, some
only the SNDCTL_DSP_SETDUPLEX interface (_not_ supported by ecasound)
while some the multi-open approach (which is supported by ecasound). The
worst thing is that the situation varies from one soundcard driver to
another, and also between different kernel versions.
The multi-open approach simply means that application opens the audio
device twice, once for playback and once for recording. Because of this
you don't see the DSP_SETDUPLEX ioctl. This is also the approach taken in
the nextgen audio subsystem for Linux --> ALSA. Also the commercial
OSS-drivers all (AFAIK, at least all the ones I've tested) implement the
multi-open style full-duplex.
Generally with ALSA things work better as all generic code is located in a
shared core driver module. As a result, from application point of view,
all the soundcard/chipset drivers behave in the same way. This is one huge
benefit of ALSA that is often overlooked. It's good to remember that
application developers can usually test their software with only one or
two different soundcards... It's critical that the sound subsystem can
hide the details of individual drivers.
> I'm using Linux 2.4.20-pre5-ac3 with the in-kernel audio drivers, and
> the ecasound debian packages from 'unstable':
Hmm, I'd suggest installing the latest ALSA 0.9 rc-release (rc3 at the
> I sent off my subscription request for this list yesterday but haven't
> heard back yet, so personal CCs on any replies would be appreciated.
You're now on the list. I manually accept all subsriptions, so it might
sometimes take a day or two. Maybe at some point I'll start using Mailman
to run this list, but this is not a top-priority item...
-- http://www.eca.cx Audio software for Linux!
-- To unsubscribe send message 'unsubscribe' in the body of the message to <ecasound-list-request_AT_wakkanet.fi>.
This archive was generated by hypermail 2b28 : Wed Sep 11 2002 - 01:23:41 EEST