diff options
author | Lennart Poettering <lennart@poettering.net> | 2009-01-24 01:25:11 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2009-01-24 01:25:11 +0100 |
commit | a365c8212d24f80acbdadc927b696dd083507b53 (patch) | |
tree | 1e535e0670a2a121571e59ad343e2ce6dd9d0fc1 /src/modules/alsa/alsa-util.c | |
parent | 54dad91f079a88f7f7dfb17692ff09af70d30e2e (diff) |
include a few HAL properties in our card/sink/source properties for ALSA devices
Diffstat (limited to 'src/modules/alsa/alsa-util.c')
-rw-r--r-- | src/modules/alsa/alsa-util.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/modules/alsa/alsa-util.c b/src/modules/alsa/alsa-util.c index 599079ca..7e5a3503 100644 --- a/src/modules/alsa/alsa-util.c +++ b/src/modules/alsa/alsa-util.c @@ -39,6 +39,10 @@ #include "alsa-util.h" +#ifdef HAVE_HAL +#include "hal-util.h" +#endif + struct pa_alsa_fdlist { unsigned num_fds; struct pollfd *fds; @@ -1248,7 +1252,7 @@ void pa_alsa_redirect_errors_dec(void) { snd_lib_error_set_handler(NULL); } -void pa_alsa_init_proplist_card(pa_proplist *p, int card) { +void pa_alsa_init_proplist_card(pa_core *c, pa_proplist *p, int card) { char *cn, *lcn; pa_assert(p); @@ -1265,9 +1269,13 @@ void pa_alsa_init_proplist_card(pa_proplist *p, int card) { pa_proplist_sets(p, "alsa.long_card_name", lcn); free(lcn); } + +#ifdef HAVE_HAL + pa_hal_get_info(c, p, card); +#endif } -void pa_alsa_init_proplist_pcm(pa_proplist *p, snd_pcm_info_t *pcm_info) { +void pa_alsa_init_proplist_pcm(pa_core *c, pa_proplist *p, snd_pcm_info_t *pcm_info) { static const char * const alsa_class_table[SND_PCM_CLASS_LAST+1] = { [SND_PCM_CLASS_GENERIC] = "generic", @@ -1321,7 +1329,7 @@ void pa_alsa_init_proplist_pcm(pa_proplist *p, snd_pcm_info_t *pcm_info) { pa_proplist_setf(p, "alsa.device", "%u", snd_pcm_info_get_device(pcm_info)); if ((card = snd_pcm_info_get_card(pcm_info)) >= 0) { - pa_alsa_init_proplist_card(p, card); + pa_alsa_init_proplist_card(c, p, card); cn = pa_proplist_gets(p, "alsa.card_name"); } |