[alsa-devel] patchmix application for EMU1616m

James Courtier-Dutton james.dutton at gmail.com
Thu Oct 22 16:35:36 CEST 2009

2009/10/19 Dominik Zalewski <dominikz at genijusz.org>:
> Is there anybody working on patchmix application for alsa?
> I'm wondering what would be the guidelines.
> - Should it be a clone of a patchmix for Windows: a separate program?
> - Or maybe there is already some infrastructure in Alsa that should be
> extended with that functionality?
> - Alsamixer already has some of that functionality, should be
> replicated in new patchmix application?
> - Are there any restrictions for the GUI libraries that may be used?
> - Does it have to be written in C/C++, or is Java also applicable?

It can be written in any language you like.
It will need to be able to interface with the alsa-lib.
Note that each sample rate requires different DSP code.
For example.
48khz uses one DSP channel, but can do more streams.
96khz uses two DSP channels, so can only have fewer streams.
192khz uses four DSP channels, so can only have fewer streams still.

So, for example, in the patchmix app, it will have to know about these
low level details, so that if the user changes the rate in the app,
patchmix clears the DSP and then reloads it with the correct DSP code
for that rate.
It is my view that all these different DSP codes for each of the
different sample rates should not be stored in the kernel, but instead
in the patchmix app. This is how it is done in windows.
There is currently fixed DSP code, ie. does not have patches, for
48khz in the ALSA kernel module.

More information about the Alsa-devel mailing list