[alsa-devel] Get sound card available channels

Clemens Ladisch clemens at ladisch.de
Thu Sep 25 10:49:38 CEST 2014


Dan Hordern wrote:
> We have a need for our process to poll/monitor the sound cards.

Something like libudev would help with monitoring /dev/snd/controlC*
devices.

> This process needs to provide a unique id for the sound card (e.g.
> some concat of name+hardware address) which we can get using snd_ctl_t
> handle.

snd_ctl_card_info_get_id()

> However, we also need to provide the number or rx/tx channels each sound
> card provides. Doing this using the pcm hw_params after snd_pcm_open won't
> work as the device may be in use.
>
> Is there a way for this process to get the number of rx/tx channels without
> needing to 'open' the device, e.g. using the snd_ctl_t handle?

No.  The number of channels might depend on the current configuration
and on other resources.

What do you need these numbers for?


Regards,
Clemens


More information about the Alsa-devel mailing list