summaryrefslogtreecommitdiffstats
path: root/src/modules/alsa
diff options
context:
space:
mode:
authorTanu Kaskinen <tanu.kaskinen@digia.com>2011-02-25 16:28:10 +0200
committerColin Guthrie <cguthrie@mandriva.org>2011-02-25 15:44:57 +0000
commit624152dac3ba253940fd893ee9e0f0cdb50cfa0f (patch)
treeba1b1a7abbf886061f8111df8ca0a36b7e2ce9a8 /src/modules/alsa
parent46359043c45df4a89cd73eb0c4ca655c6b90f6d2 (diff)
alsa-card: Add a new modarg "profile_set" for giving the card a custom profile set configuration file.
Diffstat (limited to 'src/modules/alsa')
-rw-r--r--src/modules/alsa/module-alsa-card.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/modules/alsa/module-alsa-card.c b/src/modules/alsa/module-alsa-card.c
index ebd2f8ae..3f8576d7 100644
--- a/src/modules/alsa/module-alsa-card.c
+++ b/src/modules/alsa/module-alsa-card.c
@@ -65,7 +65,8 @@ PA_MODULE_USAGE(
"tsched_buffer_watermark=<lower fill watermark> "
"profile=<profile name> "
"ignore_dB=<ignore dB information from the device?> "
- "sync_volume=<syncronize sw and hw voluchanges in IO-thread?>");
+ "sync_volume=<syncronize sw and hw voluchanges in IO-thread?> "
+ "profile_set=<profile set configuration file> ");
static const char* const valid_modargs[] = {
"name",
@@ -88,6 +89,7 @@ static const char* const valid_modargs[] = {
"profile",
"ignore_dB",
"sync_volume",
+ "profile_set",
NULL
};
@@ -328,6 +330,11 @@ int pa__init(pa_module *m) {
fn = pa_udev_get_property(alsa_card_index, "PULSE_PROFILE_SET");
#endif
+ if (pa_modargs_get_value(ma, "profile_set", NULL)) {
+ pa_xfree(fn);
+ fn = pa_xstrdup(pa_modargs_get_value(ma, "profile_set", NULL));
+ }
+
u->profile_set = pa_alsa_profile_set_new(fn, &u->core->default_channel_map);
pa_xfree(fn);