• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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