From alsa-devel-owner@alsa.jcu.cz  Mon Jan 18 21:08:43 1999
Received: from v.gp.cs.cmu.edu (V.GP.CS.CMU.EDU [128.2.191.166])
	by marvin.jcu.cz (8.9.1a/8.9.1) with SMTP id VAA06317
	for <alsa-devel@alsa.jcu.cz>; Mon, 18 Jan 1999 21:07:15 +0100
Message-Id: <199901182007.VAA06317@marvin.jcu.cz>
Subject: Re: RTLinux/ALSA mix
To: alsa-devel@alsa.jcu.cz
Date: Mon, 18 Jan 1999 15:06:54 -0500 (EST)
From: Eli Brandt <eli@v.gp.cs.cmu.edu>
In-Reply-To: <029201be40a2$fb7ceae0$47010180@pcbg> from "Benjamin GOLINVAUX" at Jan 15, 99 05:20:35 pm
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Reply-To: alsa-devel@alsa.jcu.cz
Sender: alsa-devel-owner@alsa.jcu.cz
Precedence: list

Benjamin GOLINVAUX wrote:
> Since I noticed there is quite a lot of interest in Linux as a real-time
> audio platform, I wonder if someone is actually interested to work with me
> to provide rock-steady and low latency audio I/O with ALSA drivers.

Until recently the only Linux audio subsystem I knew about was OSS, so
I didn't even consider Linux for real-time audio.  So I hadn't been
aware that Linux had so much of Posix RT implemented -- this isn't the
list for extended discussion, but can anyone recommend an overview of
its performance?  The worst-case timing overrun on a periodic signal,
for example, or on a select() for output buffer underflow.

(I'm leaving off RTLinux; that's a whole different platform.)

More germane to this list: I haven't gotten into ALSA's architecture,
but am curious what its design goals were for latency -- purely
hardware-limited?

Thanks for any help you can give...

For comparison, Irix has a process-scheduler latency somewhere under 5
msec.  The audio API imposes no noticeable latency (and at its core is
charmingly simple: basically just "write(int nsamples, sample*)",
"poll()", and "select()").  So by running our multi-priority
application as shared-space processes, we got an audio latency of
about 7 msec.  Which is tolerable, and which I'd love to be able to
get on a platform that isn't circling the drain.

-- 
     Eli Brandt  |  eli+@cs.cmu.edu  |  http://www.cs.cmu.edu/~eli/

