It would be great if the one pcm device+subdevice was always linked to the same interface (Analog or Digital) Can anyone could point me to the piece of code that chooses the mapping between the device physiscal interface and Alsa's pcm interface? I'll try to see if I can fix this.
In the case of usb-audio, it's a bit complicated. The streams are assigned automatically per USB descriptions. I think the easiest would be to mangle the PCM device number in alsa-lib USB-Audio.conf file. Maybe Clemens can give a better hint.
Thanks for the tip... let me see have a look at this file....
Humm... at least there is something to change now : ---------------- USB-Audio.pcm.use_dmix { "AudioPhile" no # uses big-endian 24-bit samples } ----------------
==> This is not true anymore since if the device is used with device_setup=0x01 or 0x11, it supports S16_LE and thus dmix can be applied !
For the rest of the file, I definitely need Clemens' enlightenment ;-)
The problem with multi plugin and JACK was fixed on 1.0.14.
Thanks.
3- Have a user interface to switch device_setup modes This may be the hardest to do and I don't think I've got the required skills to do this. Anyway, I would realy appreciate any information (or existing piece of code) about the following:
- how to write a user interface which interacts with the kernel module
- forcing a reinitialization of the snd-usb-audio module without
unprobing/reprobing the kernel module
Well, the best would be to allow the driver to change the running mode on the fly without device_setup option. But this seems requring fairly big change because of the current framework of the usb-audio driver.
I'm afraid this is beyond my skills :-(
Let's let this for the moment... Fixing point 1 seems more important.
Thibault