Re: [2.6 patch] schedule obsolete OSS drivers for removal

From: Olivier Galibert
Date: Wed Jan 04 2006 - 17:24:12 EST


On Wed, Jan 04, 2006 at 03:12:33PM -0500, Kyle Moffett wrote:
> Software mixing in the kernel probably _IS_ FPU ops in the kernel.
> We already do video mixing (think X) in userspace, I see no reason
> why audio should be different.

Bad comparison. X as it is is so good that if you want something
remotely looking like performance you end up with a proprietary kernel
module the size of Cleveland.

Software mixing in practice could be in the kernel, it's for instance
way less complex than say the network stack. I mean, even with an
helper thread, it fits in 20-30 lines of kernel code or so. But what
happens is that you quickly want much more than that. To give you
some examples:

- resampling (with a wide array of algorithms with a different cpu
usage/result quality mix), especially since a number of chips are
48KHz only.

- AC3/DTS encoding for multichannel output on spdif.

- spatialisation (virtual or real, depending on the hardware
available).

- dynamic range compression.

So as soon as you build some decent infrastructure to allow for that
in userspace, having software mixing specifically in the kernel does
not make much sense.

I have 3 main problems with ALSA, but using userspace for flexibility
is definitively not one of them.

OG.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/