From d2a13010737ce88eca4933ae6de7e946db3a7811 Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Mon, 3 Jan 2005 14:42:11 +0000 Subject: [PATCH] Make "default" PCM card-specific "default" PCM can be card-specific. The definition is moved to pcm/default.conf, and read on-demmand via aliases.conf. The card config can override the default config. --- src/conf/alsa.conf | 33 +------------------------------ src/conf/cards/aliases.conf | 6 ++++++ src/conf/pcm/Makefile.am | 2 +- src/conf/pcm/default.conf | 39 +++++++++++++++++++++++++++++++++++++ 4 files changed, 47 insertions(+), 33 deletions(-) create mode 100644 src/conf/pcm/default.conf diff --git a/src/conf/alsa.conf b/src/conf/alsa.conf index 4d6b8b7b..040a7497 100644 --- a/src/conf/alsa.conf +++ b/src/conf/alsa.conf @@ -284,38 +284,6 @@ pcm.null { type null } -pcm.default { - type plug - slave.pcm { - type hw - card { - @func getenv - vars [ - ALSA_PCM_CARD - ALSA_CARD - ] - default { - @func refer - name defaults.pcm.card - } - } - device { - @func igetenv - vars [ - ALSA_PCM_DEVICE - ] - default { - @func refer - name defaults.pcm.device - } - } - subdevice { - @func refer - name defaults.pcm.subdevice - } - } -} - # redirect to load-on-demand extended pcm definitions pcm.cards cards.pcm # some links for easy use @@ -331,6 +299,7 @@ pcm.surround71 cards.pcm.surround71 pcm.iec958 cards.pcm.iec958 pcm.spdif cards.pcm.iec958 pcm.modem cards.pcm.modem +pcm.default cards.pcm.default # # Control interface diff --git a/src/conf/cards/aliases.conf b/src/conf/cards/aliases.conf index e58d699a..dc60acf4 100644 --- a/src/conf/cards/aliases.conf +++ b/src/conf/cards/aliases.conf @@ -39,3 +39,9 @@ VIA82XX-MODEM cards.ICH-MODEM 'USB US-X2Y' cards.US-X2Y 'Serial MIDI' cards.SerialMIDI 'Prodif Plus' cards.ProdifPlus +ESM1 cards.ES1968 +ES1978 cards.ES1968 +Allegro cards.Maestro3 +Canyon3D-2 cards.Maestro3 + + diff --git a/src/conf/pcm/Makefile.am b/src/conf/pcm/Makefile.am index ee40974c..0c4ec6db 100644 --- a/src/conf/pcm/Makefile.am +++ b/src/conf/pcm/Makefile.am @@ -1,4 +1,4 @@ -cfg_files = front.conf rear.conf center_lfe.conf side.conf\ +cfg_files = default.conf front.conf rear.conf center_lfe.conf side.conf\ surround40.conf surround41.conf \ surround50.conf surround51.conf \ surround71.conf iec958.conf modem.conf diff --git a/src/conf/pcm/default.conf b/src/conf/pcm/default.conf new file mode 100644 index 00000000..738d632c --- /dev/null +++ b/src/conf/pcm/default.conf @@ -0,0 +1,39 @@ +# +# Default output +# + +pcm.!default { + @args [ CARD ] + @args.CARD { + type string + default { + @func getenv + vars [ + ALSA_PCM_CARD + ALSA_CARD + ] + default { + @func refer + name defaults.pcm.card + } + } + } + # use card-specific definition if exists + @func refer + name { + @func concat + strings [ + "cards." + { + @func card_driver + card $CARD + } + ".pcm.default:CARD=" $CARD + ] + } + default { + # use plughw as default + type plug + slave.pcm hw + } +} -- 2.47.1