Ticket #197: alsa.conf

File alsa.conf, 8.2 KB (added by stranche@…, 22 years ago)

completely untouched alsa.conf (Fedora Core 3 on a AMD64 with SB-Live platinium)

Line 
1#
2# ALSA library configuration file
3#
4
5# pre-load the configuration files
6
7@hooks [
8 {
9 func load
10 files [
11 "/etc/asound.conf"
12 "~/.asoundrc"
13 ]
14 errors false
15 }
16]
17
18# load card-specific configuration files (on request)
19
20cards.@hooks [
21 {
22 func load
23 files [
24 {
25 @func concat
26 strings [
27 { @func datadir }
28 "/cards/aliases.conf"
29 ]
30 }
31 ]
32 }
33 {
34 func load_for_all_cards
35 files [
36 {
37 @func concat
38 strings [
39 { @func datadir }
40 "/cards/"
41 { @func private_string }
42 ".conf"
43 ]
44 }
45 ]
46 errors false
47 }
48]
49
50# defaults
51
52defaults.ctl.card 0
53defaults.pcm.card 0
54defaults.pcm.device 0
55defaults.pcm.subdevice -1
56defaults.pcm.front.card defaults.pcm.card
57defaults.pcm.front.device defaults.pcm.device
58defaults.pcm.rear.card defaults.pcm.card
59defaults.pcm.rear.device defaults.pcm.device
60defaults.pcm.center_lfe.card defaults.pcm.card
61defaults.pcm.center_lfe.device defaults.pcm.device
62defaults.pcm.side.card defaults.pcm.card
63defaults.pcm.side.device defaults.pcm.device
64defaults.pcm.surround40.card defaults.pcm.card
65defaults.pcm.surround40.device defaults.pcm.device
66defaults.pcm.surround41.card defaults.pcm.card
67defaults.pcm.surround41.device defaults.pcm.device
68defaults.pcm.surround50.card defaults.pcm.card
69defaults.pcm.surround50.device defaults.pcm.device
70defaults.pcm.surround51.card defaults.pcm.card
71defaults.pcm.surround51.device defaults.pcm.device
72defaults.pcm.surround71.card defaults.pcm.card
73defaults.pcm.surround71.device defaults.pcm.device
74defaults.pcm.iec958.card defaults.pcm.card
75defaults.pcm.iec958.device defaults.pcm.device
76defaults.pcm.modem.card defaults.pcm.card
77defaults.pcm.modem.device defaults.pcm.device
78defaults.rawmidi.card 0
79defaults.rawmidi.device 0
80defaults.rawmidi.subdevice -1
81defaults.hwdep.card 0
82defaults.hwdep.device 0
83defaults.timer.class 2
84defaults.timer.sclass 0
85defaults.timer.card 0
86defaults.timer.device 0
87defaults.timer.subdevice 0
88
89#
90# PCM interface
91#
92
93pcm.hw {
94 @args [ CARD DEV SUBDEV ]
95 @args.CARD {
96 type string
97 default {
98 @func getenv
99 vars [
100 ALSA_PCM_CARD
101 ALSA_CARD
102 ]
103 default {
104 @func refer
105 name defaults.pcm.card
106 }
107 }
108 }
109 @args.DEV {
110 type integer
111 default {
112 @func igetenv
113 vars [
114 ALSA_PCM_DEVICE
115 ]
116 default {
117 @func refer
118 name defaults.pcm.device
119 }
120 }
121 }
122 @args.SUBDEV {
123 type integer
124 default {
125 @func refer
126 name defaults.pcm.subdevice
127 }
128 }
129 type hw
130 card $CARD
131 device $DEV
132 subdevice $SUBDEV
133}
134
135pcm.plughw {
136 @args [ CARD DEV SUBDEV ]
137 @args.CARD {
138 type string
139 default {
140 @func getenv
141 vars [
142 ALSA_PCM_CARD
143 ALSA_CARD
144 ]
145 default {
146 @func refer
147 name defaults.pcm.card
148 }
149 }
150 }
151 @args.DEV {
152 type integer
153 default {
154 @func igetenv
155 vars [
156 ALSA_PCM_DEVICE
157 ]
158 default {
159 @func refer
160 name defaults.pcm.device
161 }
162 }
163 }
164 @args.SUBDEV {
165 type integer
166 default {
167 @func refer
168 name defaults.pcm.subdevice
169 }
170 }
171 type plug
172 slave.pcm {
173 type hw
174 card $CARD
175 device $DEV
176 subdevice $SUBDEV
177 }
178}
179
180pcm.plug {
181 @args [ SLAVE ]
182 @args.SLAVE {
183 type string
184 }
185 type plug
186 slave.pcm $SLAVE
187}
188
189pcm.dmix {
190 @args [ SLAVE FORMAT RATE ]
191 @args.SLAVE {
192 type string
193 default "hw:0,0"
194 }
195 @args.FORMAT {
196 type string
197 default S16_LE
198 }
199 @args.RATE {
200 type integer
201 default 48000
202 }
203 type dmix
204 ipc_key 5678293
205 ipc_key_add_uid yes
206 slave {
207 pcm $SLAVE
208 format $FORMAT
209 rate $RATE
210 }
211}
212
213pcm.dsnoop {
214 @args [ SLAVE FORMAT RATE ]
215 @args.SLAVE {
216 type string
217 default "hw:0,0"
218 }
219 @args.FORMAT {
220 type string
221 default S16_LE
222 }
223 @args.RATE {
224 type integer
225 default 48000
226 }
227 type dsnoop
228 ipc_key 5778293
229 ipc_key_add_uid yes
230 slave {
231 pcm $SLAVE
232 format $FORMAT
233 rate $RATE
234 }
235}
236
237pcm.shm {
238 @args [ SOCKET PCM ]
239 @args.SOCKET {
240 type string
241 }
242 @args.PCM {
243 type string
244 }
245 type shm
246 server $SOCKET
247 pcm $PCM
248}
249
250pcm.tee {
251 @args [ SLAVE FILE FORMAT ]
252 @args.SLAVE {
253 type string
254 }
255 @args.FILE {
256 type string
257 }
258 @args.FORMAT {
259 type string
260 default raw
261 }
262 type file
263 slave.pcm $SLAVE
264 file $FILE
265 format $FORMAT
266}
267
268pcm.file {
269 @args [ FILE FORMAT ]
270 @args.FILE {
271 type string
272 }
273 @args.FORMAT {
274 type string
275 default raw
276 }
277 type file
278 slave.pcm null
279 file $FILE
280 format $FORMAT
281}
282
283pcm.null {
284 type null
285}
286
287pcm.default {
288 type plug
289 slave.pcm {
290 type hw
291 card {
292 @func getenv
293 vars [
294 ALSA_PCM_CARD
295 ALSA_CARD
296 ]
297 default {
298 @func refer
299 name defaults.pcm.card
300 }
301 }
302 device {
303 @func igetenv
304 vars [
305 ALSA_PCM_DEVICE
306 ]
307 default {
308 @func refer
309 name defaults.pcm.device
310 }
311 }
312 subdevice {
313 @func refer
314 name defaults.pcm.subdevice
315 }
316 }
317}
318
319# redirect to load-on-demand extended pcm definitions
320pcm.cards cards.pcm
321# some links for easy use
322pcm.front cards.pcm.front
323pcm.rear cards.pcm.rear
324pcm.center_lfe cards.pcm.center_lfe
325pcm.side cards.pcm.side
326pcm.surround40 cards.pcm.surround40
327pcm.surround41 cards.pcm.surround41
328pcm.surround50 cards.pcm.surround50
329pcm.surround51 cards.pcm.surround51
330pcm.surround71 cards.pcm.surround71
331pcm.iec958 cards.pcm.iec958
332pcm.spdif cards.pcm.iec958
333pcm.modem cards.pcm.modem
334
335#
336# Control interface
337#
338
339ctl.hw {
340 @args[ CARD ]
341 @args.CARD {
342 type string
343 default {
344 @func getenv
345 vars [
346 ALSA_CTL_CARD
347 ALSA_CARD
348 ]
349 default {
350 @func refer
351 name defaults.ctl.card
352 }
353 }
354 }
355 type hw
356 card $CARD
357}
358
359ctl.shm {
360 @args [ SOCKET CTL ]
361 @args.SOCKET {
362 type string
363 }
364 @args.CTL {
365 type string
366 }
367 type shm
368 server $SOCKET
369 ctl $CTL
370}
371
372ctl.default {
373 type hw
374 card {
375 @func getenv
376 vars [
377 ALSA_CTL_CARD
378 ALSA_CARD
379 ]
380 default {
381 @func refer
382 name defaults.ctl.card
383 }
384 }
385}
386
387#
388# RawMidi interface
389#
390
391rawmidi.hw {
392 @args [ CARD DEV SUBDEV ]
393 @args.CARD {
394 type string
395 default {
396 @func getenv
397 vars [
398 ALSA_RAWMIDI_CARD
399 ALSA_CARD
400 ]
401 default {
402 @func refer
403 name defaults.rawmidi.card
404 }
405 }
406 }
407 @args.DEV {
408 type integer
409 default {
410 @func igetenv
411 vars [
412 ALSA_RAWMIDI_DEVICE
413 ]
414 default {
415 @func refer
416 name defaults.rawmidi.device
417 }
418 }
419 }
420 @args.SUBDEV {
421 type integer
422 default -1
423 }
424 type hw
425 card $CARD
426 device $DEV
427 subdevice $SUBDEV
428}
429
430rawmidi.default {
431 type hw
432 card {
433 @func getenv
434 vars [
435 ALSA_RAWMIDI_CARD
436 ALSA_CARD
437 ]
438 default {
439 @func refer
440 name defaults.rawmidi.card
441 }
442 }
443 device {
444 @func igetenv
445 vars [
446 ALSA_RAWMIDI_DEVICE
447 ]
448 default {
449 @func refer
450 name defaults.rawmidi.device
451 }
452 }
453}
454
455rawmidi.virtual {
456 @args [ MERGE ]
457 @args.MERGE {
458 type string
459 default 1
460 }
461 type virtual
462 merge $MERGE
463}
464
465#
466# Sequencer interface
467#
468
469seq.default {
470 type hw
471}
472
473seq.hw {
474 type hw
475}
476
477#
478# HwDep interface
479#
480
481hwdep.hw {
482 @args [ CARD DEV ]
483 @args.CARD {
484 type string
485 default {
486 @func getenv
487 vars [
488 ALSA_HWDEP_CARD
489 ALSA_CARD
490 ]
491 default {
492 @func refer
493 name defaults.hwdep.card
494 }
495 }
496 }
497 @args.DEV {
498 type integer
499 default {
500 @func igetenv
501 vars [
502 ALSA_HWDEP_DEVICE
503 ]
504 default {
505 @func refer
506 name defaults.hwdep.device
507 }
508 }
509 }
510 type hw
511 card $CARD
512 device $DEV
513}
514
515hwdep.default {
516 type hw
517 card {
518 @func getenv
519 vars [
520 ALSA_HWDEP_CARD
521 ALSA_CARD
522 ]
523 default {
524 @func refer
525 name defaults.hwdep.card
526 }
527 }
528 device {
529 @func igetenv
530 vars [
531 ALSA_HWDEP_DEVICE
532 ]
533 default {
534 @func refer
535 name defaults.hwdep.device
536 }
537 }
538}
539
540#
541# Timer interface
542#
543
544timer_query.hw {
545 type hw
546}
547
548timer_query.default {
549 type hw
550}
551
552timer.hw {
553 @args [ CLASS SCLASS CARD DEV SUBDEV ]
554 @args.CLASS {
555 type integer
556 default {
557 @func refer
558 name defaults.timer.class
559 }
560 }
561 @args.SCLASS {
562 type integer
563 default {
564 @func refer
565 name defaults.timer.sclass
566 }
567 }
568 @args.CARD {
569 type string
570 default {
571 @func refer
572 name defaults.timer.card
573 }
574 }
575 @args.DEV {
576 type integer
577 default {
578 @func refer
579 name defaults.timer.device
580 }
581 }
582 @args.SUBDEV {
583 type integer
584 default {
585 @func refer
586 name defaults.timer.subdevice
587 }
588 }
589 type hw
590 class $CLASS
591 sclass $SCLASS
592 card $CARD
593 device $DEV
594 subdevice $SUBDEV
595}
596
597timer.default {
598 type hw
599 class {
600 @func refer
601 name defaults.timer.class
602 }
603 sclass {
604 @func refer
605 name defaults.timer.sclass
606 }
607 card {
608 @func refer
609 name defaults.timer.card
610 }
611 device {
612 @func refer
613 name defaults.timer.device
614 }
615 subdevice {
616 @func refer
617 name defaults.timer.subdevice
618 }
619}