Messages in this thread | | | Date | Wed, 4 Jan 2006 23:25:17 +0100 | From | Olivier Galibert <> | Subject | Re: [2.6 patch] schedule obsolete OSS drivers for removal |
| |
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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |