1# 2# Configuration for the EMU10K1 chip 3# 4 5<confdir:pcm/front.conf> 6 7EMU10K1.pcm.front.0 { 8 @args [ CARD ] 9 @args.CARD { 10 type string 11 } 12 type asym 13 playback.pcm { 14 type hooks 15 slave.pcm { 16 type hw 17 card $CARD 18 chmap [ "UNKNOWN" "FL,FR" ] 19 } 20 hooks.0 { 21 type ctl_elems 22 hook_args [ 23 { 24 interface PCM 25 name "EMU10K1 PCM Send Volume" 26 index { @func private_pcm_subdevice } 27 # lock true 28 optional true 29 value [ 255 255 0 0 255 0 0 0 0 255 0 0 ] 30 } 31 { 32 # for compatibility with older drivers 33 name "EMU10K1 PCM Send Volume" 34 index { @func private_pcm_subdevice } 35 # lock true 36 optional true 37 value [ 255 255 0 0 255 0 0 0 0 255 0 0 ] 38 } 39 { 40 interface PCM 41 name "EMU10K1 PCM Send Routing" 42 index { @func private_pcm_subdevice } 43 # lock true 44 optional true 45 value [ 8 9 0 0 8 9 0 0 8 9 0 0 ] 46 } 47 { 48 # for compatibility with older drivers 49 name "EMU10K1 PCM Send Routing" 50 index { @func private_pcm_subdevice } 51 # lock true 52 optional true 53 value [ 8 9 0 0 8 9 0 0 8 9 0 0 ] 54 } 55 ] 56 } 57 } 58 capture.pcm { 59 type hw 60 card $CARD 61 } 62} 63 64<confdir:pcm/rear.conf> 65 66EMU10K1.pcm.rear.0 { 67 @args [ CARD ] 68 @args.CARD { 69 type string 70 } 71 type asym 72 playback.pcm { 73 type hooks 74 slave.pcm { 75 type hw 76 card $CARD 77 chmap [ "UNKNOWN" "RL,RR" ] 78 } 79 hooks.0 { 80 type ctl_elems 81 hook_args [ 82 { 83 interface PCM 84 name "EMU10K1 PCM Send Volume" 85 index { @func private_pcm_subdevice } 86 # lock true 87 optional true 88 value [ 0 0 255 255 0 0 255 0 0 0 0 255 ] 89 } 90 { 91 # for compatibility with older drivers 92 name "EMU10K1 PCM Send Volume" 93 index { @func private_pcm_subdevice } 94 # lock true 95 optional true 96 value [ 0 0 255 255 0 0 255 0 0 0 0 255 ] 97 } 98 ] 99 } 100 } 101} 102 103<confdir:pcm/center_lfe.conf> 104 105EMU10K1.pcm.center_lfe.0 { 106 @args [ CARD ] 107 @args.CARD { 108 type string 109 } 110 type asym 111 playback.pcm { 112 type hooks 113 slave.pcm { 114 type hw 115 card $CARD 116 chmap [ "UNKNOWN" "FC,LFE" ] 117 } 118 hooks.0 { 119 type ctl_elems 120 hook_args [ 121 { 122 name "Headphone Center Playback Switch" 123 index 1 124 preserve true 125 # lock true 126 optional true 127 value true 128 } 129 { 130 name "Headphone LFE Playback Switch" 131 index 1 132 preserve true 133 # lock true 134 optional true 135 value true 136 } 137# if you have a creative's digital receiver, you can get surround/center/lfe 138# output through the digital jack. so, the following is commented out. 139# pay attention in case of analog output from the shared center/digital 140# jack! 141# { 142# name "SB Live Analog/Digital Output Jack" 143# preserve true 144# lock true 145# value 0 146# } 147 { 148 interface PCM 149 name "EMU10K1 PCM Send Volume" 150 index { @func private_pcm_subdevice } 151 # lock true 152 optional true 153 value [ 255 255 0 0 255 0 0 0 0 255 0 0 ] 154 } 155 { 156 # for compatibility with older drivers 157 name "EMU10K1 PCM Send Volume" 158 index { @func private_pcm_subdevice } 159 # lock true 160 optional true 161 value [ 255 255 0 0 255 0 0 0 0 255 0 0 ] 162 } 163 { 164 interface PCM 165 name "EMU10K1 PCM Send Routing" 166 index { @func private_pcm_subdevice } 167 # lock true 168 optional true 169 value [ 6 7 0 0 6 7 0 0 6 7 0 0 ] 170 } 171 { 172 # for compatibility with older drivers 173 name "EMU10K1 PCM Send Routing" 174 index { @func private_pcm_subdevice } 175 # lock true 176 optional true 177 value [ 6 7 0 0 6 7 0 0 6 7 0 0 ] 178 } 179 ] 180 } 181 } 182} 183 184<confdir:pcm/surround40.conf> 185 186EMU10K1.pcm.surround40.0 { 187 @args [ CARD ] 188 @args.CARD { 189 type string 190 } 191 type multi 192 slaves [ 193 { 194 pcm { 195 @func concat 196 strings [ 197 "cards.EMU10K1.pcm.front.0:CARD=" $CARD 198 ] 199 } 200 channels 2 201 } 202 { 203 pcm { 204 @func concat 205 strings [ 206 "cards.EMU10K1.pcm.rear.0:CARD=" $CARD 207 ] 208 } 209 channels 2 210 } 211 ] 212 bindings [ 213 { slave 0 channel 0 } 214 { slave 0 channel 1 } 215 { slave 1 channel 0 } 216 { slave 1 channel 1 } 217 ] 218} 219 220<confdir:pcm/surround21.conf> 221<confdir:pcm/surround41.conf> 222<confdir:pcm/surround50.conf> 223<confdir:pcm/surround51.conf> 224 225EMU10K1.pcm.surround51.0 { 226 @args [ CARD ] 227 @args.CARD { 228 type string 229 } 230 type multi 231 slaves [ 232 { 233 pcm { 234 @func concat 235 strings [ 236 "cards.EMU10K1.pcm.front.0:CARD=" $CARD 237 ] 238 } 239 channels 2 240 } 241 { 242 pcm { 243 @func concat 244 strings [ 245 "cards.EMU10K1.pcm.rear.0:CARD=" $CARD 246 ] 247 } 248 channels 2 249 } 250 { 251 pcm { 252 @func concat 253 strings [ 254 "cards.EMU10K1.pcm.center_lfe.0:CARD=" $CARD 255 ] 256 } 257 channels 2 258 } 259 ] 260 bindings [ 261 { slave 0 channel 0 } 262 { slave 0 channel 1 } 263 { slave 1 channel 0 } 264 { slave 1 channel 1 } 265 { slave 2 channel 0 } 266 { slave 2 channel 1 } 267 ] 268} 269 270<confdir:pcm/iec958.conf> 271 272EMU10K1.pcm.iec958.0 { 273 @args [ CARD AES0 AES1 AES2 AES3 ] 274 @args.CARD { 275 type string 276 } 277 @args.AES0 { 278 type integer 279 } 280 @args.AES1 { 281 type integer 282 } 283 @args.AES2 { 284 type integer 285 } 286 @args.AES3 { 287 type integer 288 } 289 type hooks 290 slave.pcm { 291 type hw 292 card $CARD 293 device 2 294 } 295 hooks.0 { 296 type ctl_elems 297 hook_args [ 298 { 299 interface PCM 300 name "IEC958 Playback Default" 301 device 2 302 lock true 303 preserve true 304 optional true 305 value [ $AES0 $AES1 $AES2 $AES3 ] 306 } 307 { 308 # for compatibility with older drivers 309 name "IEC958 Playback Default" 310 lock true 311 preserve true 312 optional true 313 value [ $AES0 $AES1 $AES2 $AES3 ] 314 } 315 { 316 name "IEC958 Optical Raw Playback Switch" 317 lock true 318 preserve true 319 value [ 1 1 ] 320 } 321 { 322 name "SB Live Analog/Digital Output Jack" 323 lock true 324 preserve true 325 value 1 326 } 327 ] 328 } 329} 330