From 156eb1228ebab8473625331b080069e4ef40bc7c Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Mon, 3 Jan 2005 17:17:43 +0000 Subject: [PATCH] Use softvol for PCM outputs Use softvol plugin for codecs without PCM volume controls (e.g. c-media). The default PCM is redefined to use softvol for playback. --- src/conf/cards/ICH.conf | 117 +++++++++++++++++++++++++++---------- src/conf/cards/ICH4.conf | 117 +++++++++++++++++++++++++++---------- src/conf/cards/NFORCE.conf | 117 +++++++++++++++++++++++++++---------- 3 files changed, 255 insertions(+), 96 deletions(-) diff --git a/src/conf/cards/ICH.conf b/src/conf/cards/ICH.conf index efe8a828..d65583a9 100644 --- a/src/conf/cards/ICH.conf +++ b/src/conf/cards/ICH.conf @@ -7,29 +7,70 @@ ICH.pcm.front.0 { @args [ CARD ] @args.CARD { - type string + type integer + } + type softvol + slave.pcm { + type hw + card $CARD + device 0 + } + control { + name "PCM Playback Volume" + card $CARD } - type hw - card $CARD - device 0 } +# with dmix? +ICH.pcm.default { + @args [ CARD ] + @args.CARD { + type integer + } + type asym + playback.pcm { + type plug + slave.pcm { + type softvol + slave.pcm { + type hw + card $CARD + device 0 + } + control { + name "PCM Playback Volume" + card $CARD + } + } + } + capture.pcm { + type plug + slave.pcm { + type hw + card $CARD + device 0 + } + } +} + ICH.pcm.surround40.0 { @args [ CARD ] @args.CARD { - type string + type integer } - type hooks + type softvol slave.pcm { - type hw - card $CARD - device 0 - } - hooks.0 { - type ctl_elems - hook_args [ + type hooks + slave.pcm { + type hw + card $CARD + device 0 + } + hooks.0 { + type ctl_elems + hook_args [ { name "Line-In As Surround" preserve true @@ -44,7 +85,12 @@ ICH.pcm.surround40.0 { lock true optional true } - ] + ] + } + } + control { + name "PCM Playback Volume" + card $CARD } } @@ -55,25 +101,27 @@ ICH.pcm.surround40.0 { ICH.pcm.surround51.0 { @args [ CARD ] @args.CARD { - type string + type integer } - type route - ttable.0.0 1 - ttable.1.1 1 - ttable.2.4 1 - ttable.3.5 1 - ttable.4.2 1 - ttable.5.3 1 + type softvol slave.pcm { - type hooks + type route + ttable.0.0 1 + ttable.1.1 1 + ttable.2.4 1 + ttable.3.5 1 + ttable.4.2 1 + ttable.5.3 1 slave.pcm { - type hw - card $CARD - device 0 - } - hooks.0 { - type ctl_elems - hook_args [ + type hooks + slave.pcm { + type hw + card $CARD + device 0 + } + hooks.0 { + type ctl_elems + hook_args [ { name "Line-In As Surround" preserve true @@ -102,10 +150,15 @@ ICH.pcm.surround51.0 { lock true optional true } - ] + ] + } } + slave.channels 6 + } + control { + name "PCM Playback Volume" + card $CARD } - slave.channels 6 } diff --git a/src/conf/cards/ICH4.conf b/src/conf/cards/ICH4.conf index ffd4cbe0..1edad586 100644 --- a/src/conf/cards/ICH4.conf +++ b/src/conf/cards/ICH4.conf @@ -7,29 +7,70 @@ ICH4.pcm.front.0 { @args [ CARD ] @args.CARD { - type string + type integer + } + type softvol + slave.pcm { + type hw + card $CARD + device 0 + } + control { + name "PCM Playback Volume" + card $CARD } - type hw - card $CARD - device 0 } +# with dmix? +ICH4.pcm.default { + @args [ CARD ] + @args.CARD { + type integer + } + type asym + playback.pcm { + type plug + slave.pcm { + type softvol + slave.pcm { + type hw + card $CARD + device 0 + } + control { + name "PCM Playback Volume" + card $CARD + } + } + } + capture.pcm { + type plug + slave.pcm { + type hw + card $CARD + device 0 + } + } +} + ICH4.pcm.surround40.0 { @args [ CARD ] @args.CARD { - type string + type integer } - type hooks + type softvol slave.pcm { - type hw - card $CARD - device 0 - } - hooks.0 { - type ctl_elems - hook_args [ + type hooks + slave.pcm { + type hw + card $CARD + device 0 + } + hooks.0 { + type ctl_elems + hook_args [ { name "Line-In As Surround" preserve true @@ -44,7 +85,12 @@ ICH4.pcm.surround40.0 { lock true optional true } - ] + ] + } + } + control { + name "PCM Playback Volume" + card $CARD } } @@ -55,25 +101,27 @@ ICH4.pcm.surround40.0 { ICH4.pcm.surround51.0 { @args [ CARD ] @args.CARD { - type string + type integer } - type route - ttable.0.0 1 - ttable.1.1 1 - ttable.2.4 1 - ttable.3.5 1 - ttable.4.2 1 - ttable.5.3 1 + type softvol slave.pcm { - type hooks + type route + ttable.0.0 1 + ttable.1.1 1 + ttable.2.4 1 + ttable.3.5 1 + ttable.4.2 1 + ttable.5.3 1 slave.pcm { - type hw - card $CARD - device 0 - } - hooks.0 { - type ctl_elems - hook_args [ + type hooks + slave.pcm { + type hw + card $CARD + device 0 + } + hooks.0 { + type ctl_elems + hook_args [ { name "Line-In As Surround" preserve true @@ -102,10 +150,15 @@ ICH4.pcm.surround51.0 { lock true optional true } - ] + ] + } } + slave.channels 6 + } + control { + name "PCM Playback Volume" + card $CARD } - slave.channels 6 } diff --git a/src/conf/cards/NFORCE.conf b/src/conf/cards/NFORCE.conf index c307450b..89715b0f 100644 --- a/src/conf/cards/NFORCE.conf +++ b/src/conf/cards/NFORCE.conf @@ -7,29 +7,70 @@ NFORCE.pcm.front.0 { @args [ CARD ] @args.CARD { - type string + type integer + } + type softvol + slave.pcm { + type hw + card $CARD + device 0 + } + control { + name "PCM Playback Volume" + card $CARD } - type hw - card $CARD - device 0 } +# with dmix? +NFORCE.pcm.default { + @args [ CARD ] + @args.CARD { + type integer + } + type asym + playback.pcm { + type plug + slave.pcm { + type softvol + slave.pcm { + type hw + card $CARD + device 0 + } + control { + name "PCM Playback Volume" + card $CARD + } + } + } + capture.pcm { + type plug + slave.pcm { + type hw + card $CARD + device 0 + } + } +} + NFORCE.pcm.surround40.0 { @args [ CARD ] @args.CARD { - type string + type integer } - type hooks + type softvol slave.pcm { - type hw - card $CARD - device 0 - } - hooks.0 { - type ctl_elems - hook_args [ + type hooks + slave.pcm { + type hw + card $CARD + device 0 + } + hooks.0 { + type ctl_elems + hook_args [ { name "Line-In As Surround" preserve true @@ -44,7 +85,12 @@ NFORCE.pcm.surround40.0 { lock true optional true } - ] + ] + } + } + control { + name "PCM Playback Volume" + card $CARD } } @@ -55,25 +101,27 @@ NFORCE.pcm.surround40.0 { NFORCE.pcm.surround51.0 { @args [ CARD ] @args.CARD { - type string + type integer } - type route - ttable.0.0 1 - ttable.1.1 1 - ttable.2.4 1 - ttable.3.5 1 - ttable.4.2 1 - ttable.5.3 1 + type softvol slave.pcm { - type hooks + type route + ttable.0.0 1 + ttable.1.1 1 + ttable.2.4 1 + ttable.3.5 1 + ttable.4.2 1 + ttable.5.3 1 slave.pcm { - type hw - card $CARD - device 0 - } - hooks.0 { - type ctl_elems - hook_args [ + type hooks + slave.pcm { + type hw + card $CARD + device 0 + } + hooks.0 { + type ctl_elems + hook_args [ { name "Line-In As Surround" preserve true @@ -102,10 +150,15 @@ NFORCE.pcm.surround51.0 { lock true optional true } - ] + ] + } } + slave.channels 6 + } + control { + name "PCM Playback Volume" + card $CARD } - slave.channels 6 } -- 2.47.1