On Fri, Aug 27, 2010 at 08:49:16AM +0000, Kim Therkelsen wrote: [Please fix your MUA to word wrap within paragraphs, it makes your messages vastly more legible.] > > No, DSP in kernel will never be accepted upstream. ALSA supports doing > > DSP at the application layer, though PulseAudio bypasses all the setup > > for that by default. > I do not really understand what you mean by "No, DSP in kernel will > never be accepted upstream". Code which does signal processing on the CPU in kernel space will never be accepted by the ALSA developers. > What I want is to make is a DSP module that improves the sound quality > of the sound coming from the laptop builtin speakers by applying DSP Sure, this was clear. > What I really want to know is: > Where can I place this module: > As a plugin to PulseAudio? Pulse should be able to do this. > Some other type of plugin? You could do an ALSA plugin, though Pulse would require some persuasion to run with it. > As a kernel module? This will not be accepted. > In the audio driver? The audio drivers are mostly in kernel. > My requirements: > 1) Must be able to detect if headphones are connected Note that it's not just a case of checking if they're plugged in - you also need to check that the signal you're interested in is going via them. > 2) Must be able to process stereo and multichannel (5.1/7.1) formats. I need the multichannel formats to perform my binaural downmixing to stereo. You want to be somewhere in application layer for all of this.