On Sun, 2004-02-01 at 11:02, Daniel Risacher wrote: > Background: > > Despite the various and sundry advances in linux audio, I find there > are still legacy apps that are built against the OSS API. This is > problematic since the legacy OSS model has blocking semantics. To get > multiple audio streams, one must use an audio server such as esd, > aRts, etc. Wouldn't it be nice if all the legacy apps "just worked"? > Without blocking each other? > > Idea: > > Suppose one were to write a kernel module that implemented the OSS > API, but had non-blocking semantics, and instead of driving a sound > card, the module encapsulated the OSS API calls somehow and passed > them back to a user-space audio server.
I might be wrong, but I think this is already possible using the dmix plugin from alsa-lib. You'll have to setup a dmix slave and make your OSS emulation use it. Never tried it myself, though. So take this with the usual grain of salt. Jan
