Subject: arch-independent audio driver
To: None <tech-kern@NetBSD.ORG>
From: Rolf Grossmann <grossman@informatik.tu-muenchen.de>
List: tech-kern
Date: 04/05/1995 18:39:36
Hi,

I've had a closer look at the architecture independent audio driver. It's
really nice, but unfortunatly experience has shown, it's too slow most of
the time (on slow machines or when computing the sound data). (I've used it
with my own code on a SparcStation 1 and with a Soundblaster Pro on an 
i486DX/2 66.)

The way it currently works is, that the hardware audio driver gets a block 
of samples and when it's done with that (e.g. when it gets a dma_done
interrupt) it requests the next block from the independent audio driver.
Now it has to receive that next block in the time it takes to play one
sample ... not much time, especially when playing at 44kHz ;)

So, to improve performance, I'd suggest a way that the hardware driver
can request the next block even when it's not yet done with the one it
is currently using.

As this requires a quite big change in the interface, I'd like to know if
a) such an implementation has a chance to make it into netbsd?
b) anybody has some idea how to do that?
c) what to pay attention to, if I was implementing such an interface?

Thanke for your comment, bye,
	Rolf