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