- turn on the jack sharing switches automatically for surround pcms.

- fixed the device number of hooked controls (all zero).
- use route plugin instead of multi plugin for remapping of channels.
This commit is contained in:
Takashi Iwai 2004-03-03 18:18:34 +00:00
parent 0ecc03111d
commit eaa016554c
5 changed files with 282 additions and 50 deletions

View file

@ -34,6 +34,7 @@ ATIIXP.pcm.surround40.0 {
name "Line-In As Surround" name "Line-In As Surround"
preserve true preserve true
value true value true
lock true
optional true optional true
} }
{ {
@ -69,12 +70,14 @@ ATIIXP.pcm.surround51.0 {
name "Line-In As Surround" name "Line-In As Surround"
preserve true preserve true
value true value true
lock true
optional true optional true
} }
{ {
name "Mic As Center/LFE" name "Mic As Center/LFE"
preserve true preserve true
value true value true
lock true
optional true optional true
} }
{ {
@ -125,18 +128,21 @@ ATIIXP.pcm.iec958.0 {
hook_args [ hook_args [
{ {
name "IEC958 Playback AC97-SPSA" name "IEC958 Playback AC97-SPSA"
device 0
lock true lock true
preserve true preserve true
value 3 value 3
} }
{ {
name "IEC958 Playback Default" name "IEC958 Playback Default"
device 0
lock true lock true
preserve true preserve true
value [ $AES0 $AES1 $AES2 $AES3 ] value [ $AES0 $AES1 $AES2 $AES3 ]
} }
{ {
name "IEC958 Playback Switch" name "IEC958 Playback Switch"
device 0
lock true lock true
preserve true preserve true
value true value true

View file

@ -16,7 +16,37 @@ ICH.pcm.front.0 {
<confdir:pcm/surround40.conf> <confdir:pcm/surround40.conf>
ICH.pcm.surround40.0 "cards.ICH.pcm.front.0" ICH.pcm.surround40.0 {
@args [ CARD ]
@args.CARD {
type string
}
type hooks
slave.pcm {
type hw
card $CARD
device 0
}
hooks.0 {
type ctl_elems
hook_args [
{
name "Line-In As Surround"
preserve true
value true
lock true
optional true
}
{
name "Surround Down Mix"
preserve true
value off
lock true
optional true
}
]
}
}
<confdir:pcm/surround41.conf> <confdir:pcm/surround41.conf>
<confdir:pcm/surround50.conf> <confdir:pcm/surround50.conf>
@ -27,26 +57,55 @@ ICH.pcm.surround51.0 {
@args.CARD { @args.CARD {
type string type string
} }
type multi type route
slaves [ ttable.0.0 1
{ ttable.1.1 1
pcm { ttable.2.4 1
@func concat ttable.3.5 1
strings [ ttable.4.2 1
"cards.ICH.pcm.front.0:CARD=" $CARD ttable.5.3 1
] slave.pcm {
} type hooks
channels 6 slave.pcm {
type hw
card $CARD
device 0
} }
] hooks.0 {
bindings [ type ctl_elems
{ slave 0 channel 0 } hook_args [
{ slave 0 channel 1 } {
{ slave 0 channel 4 } name "Line-In As Surround"
{ slave 0 channel 5 } preserve true
{ slave 0 channel 2 } value true
{ slave 0 channel 3 } lock true
] optional true
}
{
name "Mic As Center/LFE"
preserve true
value true
lock true
optional true
}
{
name "Surround Down Mix"
preserve true
value off
lock true
optional true
}
{
name "Center/LFE Down Mix"
preserve true
value off
lock true
optional true
}
]
}
}
slave.channels 6
} }
<confdir:pcm/iec958.conf> <confdir:pcm/iec958.conf>

View file

@ -16,7 +16,37 @@ NFORCE.pcm.front.0 {
<confdir:pcm/surround40.conf> <confdir:pcm/surround40.conf>
NFORCE.pcm.surround40.0 "cards.NFORCE.pcm.front.0" NFORCE.pcm.surround40.0 {
@args [ CARD ]
@args.CARD {
type string
}
type hooks
slave.pcm {
type hw
card $CARD
device 0
}
hooks.0 {
type ctl_elems
hook_args [
{
name "Line-In As Surround"
preserve true
value true
lock true
optional true
}
{
name "Surround Down Mix"
preserve true
value off
lock true
optional true
}
]
}
}
<confdir:pcm/surround41.conf> <confdir:pcm/surround41.conf>
<confdir:pcm/surround50.conf> <confdir:pcm/surround50.conf>
@ -27,26 +57,55 @@ NFORCE.pcm.surround51.0 {
@args.CARD { @args.CARD {
type string type string
} }
type multi type route
slaves [ ttable.0.0 1
{ ttable.1.1 1
pcm { ttable.2.4 1
@func concat ttable.3.5 1
strings [ ttable.4.2 1
"cards.NFORCE.pcm.front.0:CARD=" $CARD ttable.5.3 1
] slave.pcm {
} type hooks
channels 6 slave.pcm {
type hw
card $CARD
device 0
} }
] hooks.0 {
bindings [ type ctl_elems
{ slave 0 channel 0 } hook_args [
{ slave 0 channel 1 } {
{ slave 0 channel 4 } name "Line-In As Surround"
{ slave 0 channel 5 } preserve true
{ slave 0 channel 2 } value true
{ slave 0 channel 3 } lock true
] optional true
}
{
name "Mic As Center/LFE"
preserve true
value true
lock true
optional true
}
{
name "Surround Down Mix"
preserve true
value off
lock true
optional true
}
{
name "Center/LFE Down Mix"
preserve true
value off
lock true
optional true
}
]
}
}
slave.channels 6
} }
<confdir:pcm/iec958.conf> <confdir:pcm/iec958.conf>

View file

@ -21,16 +21,88 @@ VIA8233.pcm.surround40.0 {
@args.CARD { @args.CARD {
type string type string
} }
type hw type hooks
card $CARD slave.pcm {
device 1 type hw
card $CARD
device 1
}
hooks.0 {
type ctl_elems
hook_args [
{
name "Line-In As Surround"
device 0
preserve true
value true
lock true
optional true
}
{
name "Surround Down Mix"
device 0
preserve true
value off
lock true
optional true
}
]
}
} }
<confdir:pcm/surround41.conf> <confdir:pcm/surround41.conf>
<confdir:pcm/surround50.conf> <confdir:pcm/surround50.conf>
<confdir:pcm/surround51.conf> <confdir:pcm/surround51.conf>
VIA8233.pcm.surround51.0 "cards.VIA8233.pcm.surround40.0" VIA8233.pcm.surround51.0 {
@args [ CARD ]
@args.CARD {
type string
}
type hooks
slave.pcm {
type hw
card $CARD
device 1
}
hooks.0 {
type ctl_elems
hook_args [
{
name "Line-In As Surround"
device 0
preserve true
value true
lock true
optional true
}
{
name "Mic As Center/LFE"
device 0
preserve true
value true
lock true
optional true
}
{
name "Surround Down Mix"
device 0
preserve true
value off
lock true
optional true
}
{
name "Center/LFE Down Mix"
device 0
preserve true
value off
lock true
optional true
}
]
}
}
<confdir:pcm/iec958.conf> <confdir:pcm/iec958.conf>
@ -39,9 +111,6 @@ VIA8233.pcm.iec958.0 {
@args.CARD { @args.CARD {
type string type string
} }
@args.DEV {
type integer
}
@args.AES0 { @args.AES0 {
type integer type integer
} }

View file

@ -38,6 +38,20 @@ VIA8233A.pcm.surround40.0 {
value flase value flase
optional true optional true
} }
{
name "Line-In As Surround"
preserve true
value true
lock true
optional true
}
{
name "Surround Down Mix"
preserve true
value off
lock true
optional true
}
] ]
} }
} }
@ -68,6 +82,34 @@ VIA8233A.pcm.surround51.0 {
value true value true
optional true optional true
} }
{
name "Line-In As Surround"
preserve true
value true
lock true
optional true
}
{
name "Mic As Center/LFE"
preserve true
value true
lock true
optional true
}
{
name "Surround Down Mix"
preserve true
value off
lock true
optional true
}
{
name "Center/LFE Down Mix"
preserve true
value off
lock true
optional true
}
] ]
} }
} }
@ -79,9 +121,6 @@ VIA8233A.pcm.iec958.0 {
@args.CARD { @args.CARD {
type string type string
} }
@args.DEV {
type integer
}
@args.AES0 { @args.AES0 {
type integer type integer
} }