1 # Configuration file syntax
3 # Include a new configuration file
9 # Compound assign (first style)
15 # Compound assign (second style)
16 name.name1 [=] value [,|;]
18 # Array assign (first style)
25 # Array assign (second style)
26 name.0 [=] value0 [,|;]
27 name.1 [=] value1 [,|;]
29 # ******************************************************************************
33 host STR # host where the server is located (if map to local address
34 # server is local, and then it may be started automatically)
35 [socket STR] # PF_LOCAL socket name to listen/connect
36 [port INT] # PF_INET port number to listen/connect
41 [lib STR] # Library file (default libasound.so)
42 [open STR] # Open function (default _snd_pcm_NAME_open)
43 [redirect { # Redirect this PCM to an another
44 [filename STR] # Configuration file specification
45 name STR # PCM name specification
49 # PCM scope type definition
51 [lib STR] # Library file (default libasound.so)
52 [open STR] # Open function (default _snd_pcm_scope_NAME_open)
55 # PCM scope definition
61 # Slave PCM definition
65 pcm { } # PCM definition
67 channels INT # Channels
69 period_time INT # Period time
70 buffer_time INT # Buffer time
74 # Hook arguments definition
76 ... # Arbitrary arguments
81 [lib STR] # Library file (default libasound.so)
82 [install STR] # Install function (default _snd_pcm_hook_NAME_install)
87 type STR # PCM Hook type (see pcm_hook_type)
88 [args STR] # Arguments for install function (see hook_args)
90 [args { }] # Arguments for install function
96 [comment ANY] # Saved comments
101 card INT/STR # Card name or number
102 [device] INT # Device number (default 0)
103 [subdevice] INT # Subdevice number, -1 first available (default -1)
106 type hooks # PCM with hooks
107 slave STR # Slave name (see pcm_slave)
109 slave { # Slave definition
110 pcm STR # Slave PCM name
112 pcm { } # Slave PCM definition
115 ID STR # Hook name (see pcm_hook)
117 ID { } # Hook definition (see pcm_hook)
120 type plug # Format adjusted PCM
121 slave STR # Slave name (see pcm_slave)
123 slave { # Slave definition
124 pcm STR # Slave PCM name
126 pcm { } # Slave PCM definition
127 [format STR] # Slave format (default nearest) or "unchanged"
128 [channels INT] # Slave channels (default nearest) or "unchanged"
129 [rate INT] # Slave rate (default nearest) or "unchanged"
131 route_policy STR # route policy for automatic ttable generation
132 # STR can be 'sum', 'copy', 'duplicate'
133 # sum: result is sum of input channels (default)
134 # copy: only first channels are copied to destination
135 # duplicate: duplicate first set of channels
136 ttable { # Transfer table (bidimensional compound of
137 # cchannels * schannels numbers)
139 SCHANNEL REAL # route value (0.0 ... 1.0)
144 type copy # Copy conversion PCM
145 slave STR # Slave name (see pcm_slave)
147 slave { # Slave definition
148 pcm STR # Slave PCM name
150 pcm { } # Slave PCM definition
154 type linear # Linear format conversion PCM
155 type adpcm # IMA-ADPCM format conversion PCM
156 type alaw # A-Law format conversion PCM
157 type mulaw # Mu-Law format conversion PCM
158 slave STR # Slave name (see pcm_slave)
160 slave { # Slave definition
161 pcm STR # Slave PCM name
163 pcm { } # Slave PCM definition
164 format STR # Slave format
168 type rate # Rate conversion PCM
169 slave STR # Slave name (see pcm_slave)
171 slave { # Slave definition
172 pcm STR # Slave PCM name
174 pcm { } # Slave PCM definition
175 [format STR] # Slave format (default client format)
176 rate INT # Slave rate
180 type route # Attenuated static route PCM
181 slave STR # Slave name (see pcm_slave)
183 slave { # Slave definition
184 pcm STR # Slave PCM name
186 pcm { } # Slave PCM definition
187 [format STR] # Slave format (default client format)
188 [channels INT] # Slave channels (default client channels)
190 ttable { # Transfer table (bidimensional compound of
191 # cchannels * schannels numbers)
193 SCHANNEL REAL # route value (0.0 ... 1.0)
198 type multi # Linked PCMs (exclusive access to selected channels)
199 slaves { # Slaves definitions
200 ID STR # Slave name for slave N (see pcm_slave)
202 ID { # Slave definition for slave N
203 pcm STR # Slave PCM name
205 pcm { } # Slave PCM definition
206 channels INT # Slave channels
209 bindings { # Bindings table
210 N { # Binding for client channel N
211 slave STR # Slave key
212 channel INT # Slave channel
215 [master INT] # Define the master slave
218 type file # File plugin
219 slave STR # Slave name (see pcm_slave)
221 slave { # Slave definition
222 pcm STR # Slave PCM name
224 pcm { } # Slave PCM definition
228 file INT # File descriptor
229 [format STR] # File format (NYI)
232 type meter # Meter PCM
233 slave STR # Slave name (see pcm_slave)
235 slave { # Slave definition or name
236 pcm STR # Slave PCM name
238 pcm { } # Slave PCM definition
240 [frequency INT] # Updates per second
242 ID STR # Scope name (see pcm_scope)
244 ID { } # Scope definition (see pcm_scope)
248 type droute # Attenuated dynamic route PCM (NYI)
249 slave STR # Slave name (see pcm_slave)
251 slave { # Slave definition
252 pcm STR # Slave PCM name
254 pcm { } # Slave PCM definition
255 [format STR] # Slave format (default client format)
256 [channels INT] # Slave channels (default client channels)
259 bindings { # Bindings table
261 cchannels { # Client channels
262 C INT # Client channel
264 schannel { # Slave channels
265 S INT # Slave channel
267 control STR # Control name of C * S (or C values: only if C == S)
272 type null # Null endpoint plugin
273 [time INT] # Time related or not (NYI)
276 type shm # Shared memory client PCM
277 server STR # Server name
278 pcm STR # PCM name on server
281 type share # Share PCM
282 slave STR # Slave name (see pcm_slave)
283 bindings { # Bindings table
284 N INT # Slave channel for client channel N
289 slave STR # Slave name (see pcm_slave)
290 bindings { # Bindings table
291 N INT # Slave channel for client channel N
297 # CTL type definition
299 [lib STR] # Library file (default libasound.so)
300 [open STR] # Open function (default _snd_ctl_NAME_open)
306 [comment ANY] # Saved comments
310 card STR/INT # Card name or number
313 type shm # Shared memory client CTL
314 server STR # Server name
315 ctl STR # CTL name on server
321 # RAWMIDI type definition
323 [lib STR] # Library file (default libasound.so)
324 [open STR] # Open function (default _snd_rawmidi_NAME_open)
330 [comment ANY] # Saved comments
333 type hw # Kernel RAWMIDI
334 card INT/STR # Card name or number
335 [device] INT # Device number (default 0)
336 [subdevice] INT # Subdevice number, -1 first available (default -1)
341 # SEQ type definition
343 [lib STR] # Library file (default libasound.so)
344 [open STR] # Open function (default _snd_seq_NAME_open)
350 [comment ANY] # Saved comments
359 DEF.NAME1 NAME2 # DEF.NAME1 is an alias for DEF.NAME2
394 slave.pcm plug:trident
403 pcm_scope_type.level {
404 lib /home/abramo/scopes/liblevel.so