1#
2# Default output
3#
4
5pcm.!default {
6	@args [ CARD ]
7	@args.CARD {
8		type string
9		default {
10			@func getenv
11			vars [
12				ALSA_PCM_CARD
13				ALSA_CARD
14			]
15			default {
16				@func refer
17				name defaults.pcm.card
18			}
19		}
20	}
21	type empty
22	slave.pcm {
23		# use card-specific definition if exists
24		@func refer
25		name {
26			@func concat
27			strings [
28				"cards."
29				{
30					@func card_driver
31					card $CARD
32				}
33				".pcm.default:CARD=" $CARD
34			]
35		}
36		default {
37			# use plughw as default
38			type plug
39			slave.pcm {
40				type hw
41				card $CARD
42			}
43			hint.device 0
44		}
45	}
46	hint {
47		description "Default Audio Device"
48		device_output {
49			@func refer
50			name defaults.pcm.dmix.device
51		}
52		device_input {
53			@func refer
54			name defaults.pcm.dsnoop.device
55		}
56	}
57}
58