[alsa-devel] "softswitch" feature?

Nicolas Boullis nboullis at debian.org
Tue Jan 20 01:59:30 CET 2009


I'd like to implement a PCM device with 2 slaves, that sends its stream 
to either slave according to a user-defined switch.

I need this for a card that is able to play either 2-channel 16-bit 
big-endian frames to its analog output or IEC958 frames to its digital 
output. I'd like to setup a "default" device for this card that send 
sound to either output according to a switch.

Is such a thing feasible with the existing plugins?

If not, do you think it would be easy to implement?

Note that, although my card implements this as 2 separate devices, they 
can't be open simultaneously since both use the same hardware fifo. 
Hence, I think it would require that the unused slave not be open.

I also can imagine othen applications for such a feature, such as with a 
VOIP application to use either a standard soundcard connected to 
loudspeakers and a microphone, or a bluetooth headset.



PS: FWIW, the card I'm talking about is a hardware MPEG decoder board, 
whose driver I'm the maintainer of, an which implements an ALSA driver 
for its audio part. It's current card-specific configuration is 
available at
All comments are welcome.

More information about the Alsa-devel mailing list