1# 2# Configuration for the nVIDIA nForce/2/3 3# 4 5<confdir:pcm/front.conf> 6 7NFORCE.pcm.front.0 { 8 @args [ CARD ] 9 @args.CARD { 10 type string 11 } 12 type softvol 13 slave.pcm { 14 type hw 15 card $CARD 16 } 17 control { 18 name "PCM Playback Volume" 19 card $CARD 20 } 21} 22 23# default with dmix+softvol & dsnoop 24NFORCE.pcm.default { 25 @args [ CARD ] 26 @args.CARD { 27 type string 28 } 29 type asym 30 playback.pcm { 31 type plug 32 slave.pcm { 33 type softvol 34 slave.pcm { 35 @func concat 36 strings [ "dmix:" $CARD ] 37 } 38 control { 39 name "PCM Playback Volume" 40 card $CARD 41 } 42 } 43 } 44 capture.pcm { 45 type plug 46 slave.pcm { 47 @func concat 48 strings [ "dsnoop:" $CARD ] 49 } 50 } 51} 52 53<confdir:pcm/surround40.conf> 54 55NFORCE.pcm.surround40.0 { 56 @args [ CARD ] 57 @args.CARD { 58 type string 59 } 60 type softvol 61 slave.pcm { 62 type hooks 63 slave.pcm { 64 type hw 65 card $CARD 66 channels 4 67 } 68 hooks.0 { 69 type ctl_elems 70 hook_args [ 71 { 72 name "Channel Mode" 73 preserve true 74 value "4ch" 75 lock true 76 optional true 77 } 78 # for old drivers 79 { 80 name "Line-In As Surround" 81 preserve true 82 value true 83 optional true 84 } 85 { 86 name "Surround Down Mix" 87 preserve true 88 value off 89 lock true 90 optional true 91 } 92 ] 93 } 94 } 95 control { 96 name "PCM Playback Volume" 97 card $CARD 98 } 99} 100 101<confdir:pcm/surround21.conf> 102<confdir:pcm/surround41.conf> 103<confdir:pcm/surround50.conf> 104<confdir:pcm/surround51.conf> 105 106NFORCE.pcm.surround51.0 { 107 @args [ CARD ] 108 @args.CARD { 109 type string 110 } 111 type softvol 112 slave.pcm { 113 type route 114 ttable.0.0 1 115 ttable.1.1 1 116 ttable.2.4 1 117 ttable.3.5 1 118 ttable.4.2 1 119 ttable.5.3 1 120 slave.pcm { 121 type hooks 122 slave.pcm { 123 type hw 124 card $CARD 125 channels 6 126 } 127 hooks.0 { 128 type ctl_elems 129 hook_args [ 130 { 131 name "Channel Mode" 132 preserve true 133 value "6ch" 134 lock true 135 optional true 136 } 137 # for old drivers 138 { 139 name "Line-In As Surround" 140 preserve true 141 value true 142 optional true 143 } 144 { 145 name "Mic As Center/LFE" 146 preserve true 147 value true 148 optional true 149 } 150 { 151 name "Surround Down Mix" 152 preserve true 153 value off 154 lock true 155 optional true 156 } 157 { 158 name "Center/LFE Down Mix" 159 preserve true 160 value off 161 lock true 162 optional true 163 } 164 ] 165 } 166 } 167 slave.channels 6 168 } 169 control { 170 name "PCM Playback Volume" 171 card $CARD 172 } 173} 174 175<confdir:pcm/surround71.conf> 176 177NFORCE.pcm.surround71.0 { 178 @args [ CARD ] 179 @args.CARD { 180 type string 181 } 182 type softvol 183 slave.pcm { 184 type route 185 ttable.0.0 1 186 ttable.1.1 1 187 ttable.2.4 1 188 ttable.3.5 1 189 ttable.4.2 1 190 ttable.5.3 1 191 ttable.6.6 1 192 ttable.7.7 1 193 slave.pcm { 194 type hooks 195 slave.pcm { 196 type hw 197 card $CARD 198 device 0 199 } 200 hooks.0 { 201 type ctl_elems 202 hook_args [ 203 { 204 name "Channel Mode" 205 preserve true 206 value "8ch" 207 lock true 208 optional true 209 } 210 # for old drivers 211 { 212 name "Line-In As Surround" 213 preserve true 214 value true 215 optional true 216 } 217 { 218 name "Mic As Center/LFE" 219 preserve true 220 value true 221 optional true 222 } 223 { 224 name "Surround Down Mix" 225 preserve true 226 value off 227 lock true 228 optional true 229 } 230 { 231 name "Center/LFE Down Mix" 232 preserve true 233 value off 234 lock true 235 optional true 236 } 237 ] 238 } 239 } 240 slave.channels 8 241 } 242 control { 243 name "PCM Playback Volume" 244 card $CARD 245 } 246} 247 248<confdir:pcm/iec958.conf> 249 250NFORCE.pcm.iec958.0 { 251 @args [ CARD AES0 AES1 AES2 AES3 ] 252 @args.CARD { 253 type string 254 } 255 @args.AES0 { 256 type integer 257 } 258 @args.AES1 { 259 type integer 260 } 261 @args.AES2 { 262 type integer 263 } 264 @args.AES3 { 265 type integer 266 } 267 type hooks 268 slave.pcm { 269 type hw 270 card $CARD 271 device 2 272 } 273 hooks.0 { 274 type ctl_elems 275 hook_args [ 276 { 277 name "IEC958 Playback AC97-SPSA" 278 lock true 279 preserve true 280 value 0 281 } 282 { 283 name "IEC958 Playback Default" 284 lock true 285 preserve true 286 value [ $AES0 $AES1 $AES2 $AES3 ] 287 } 288 { 289 name "IEC958 Playback Switch" 290 lock true 291 preserve true 292 value true 293 } 294 ] 295 } 296} 297