mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-10-29 05:40:25 -04:00
asoundrc.doc -> asoundrc.txt
This commit is contained in:
parent
10fa12eb7d
commit
7d184ca60f
1 changed files with 0 additions and 0 deletions
406
doc/asoundrc.txt
Normal file
406
doc/asoundrc.txt
Normal file
|
|
@ -0,0 +1,406 @@
|
|||
# Configuration file syntax
|
||||
|
||||
# Include a new configuration file
|
||||
<filename>
|
||||
|
||||
# Simple assign
|
||||
name [=] value [,|;]
|
||||
|
||||
# Compound assign (first style)
|
||||
name [=] {
|
||||
name1 [=] value [,|;]
|
||||
...
|
||||
}
|
||||
|
||||
# Compound assign (second style)
|
||||
name.name1 [=] value [,|;]
|
||||
|
||||
# Array assign (first style)
|
||||
name [
|
||||
value0 [,|;]
|
||||
value1 [,|;]
|
||||
...
|
||||
]
|
||||
|
||||
# Array assign (second style)
|
||||
name.0 [=] value0 [,|;]
|
||||
name.1 [=] value1 [,|;]
|
||||
|
||||
# ******************************************************************************
|
||||
|
||||
# Server definition
|
||||
server.NAME {
|
||||
host STR # host where the server is located (if map to local address
|
||||
# server is local, and then it may be started automatically)
|
||||
[socket STR] # PF_LOCAL socket name to listen/connect
|
||||
[port INT] # PF_INET port number to listen/connect
|
||||
}
|
||||
|
||||
# PCM type definition
|
||||
pcm_type.NAME {
|
||||
[lib STR] # Library file (default libasound.so)
|
||||
[open STR] # Open function (default _snd_pcm_NAME_open)
|
||||
[redirect { # Redirect this PCM to an another
|
||||
[filename STR] # Configuration file specification
|
||||
name STR # PCM name specification
|
||||
}]
|
||||
}
|
||||
|
||||
# PCM scope type definition
|
||||
pcm_scope_type.NAME {
|
||||
[lib STR] # Library file (default libasound.so)
|
||||
[open STR] # Open function (default _snd_pcm_scope_NAME_open)
|
||||
}
|
||||
|
||||
# PCM scope definition
|
||||
pcm_scope.NAME {
|
||||
type STR # Scope type
|
||||
...
|
||||
}
|
||||
|
||||
# Slave PCM definition
|
||||
pcm_slave.NAME {
|
||||
pcm STR # PCM name
|
||||
# or
|
||||
pcm { } # PCM definition
|
||||
format STR # Format
|
||||
channels INT # Channels
|
||||
rate INT # Rate
|
||||
period_time INT # Period time
|
||||
buffer_time INT # Buffer time
|
||||
etc.
|
||||
}
|
||||
|
||||
# Hook arguments definition
|
||||
hook_args.NAME {
|
||||
... # Arbitrary arguments
|
||||
}
|
||||
|
||||
# PCM hook type
|
||||
pcm_hook_type.NAME {
|
||||
[lib STR] # Library file (default libasound.so)
|
||||
[install STR] # Install function (default _snd_pcm_hook_NAME_install)
|
||||
}
|
||||
|
||||
# PCM hook definition
|
||||
pcm_hook.NAME {
|
||||
type STR # PCM Hook type (see pcm_hook_type)
|
||||
[args STR] # Arguments for install function (see hook_args)
|
||||
# or
|
||||
[args { }] # Arguments for install function
|
||||
}
|
||||
|
||||
# PCM definition
|
||||
pcm.NAME {
|
||||
type STR # Type
|
||||
[comment ANY] # Saved comments
|
||||
|
||||
|
||||
# PCM types:
|
||||
type hw # Kernel PCM
|
||||
card INT/STR # Card name or number
|
||||
[device] INT # Device number (default 0)
|
||||
[subdevice] INT # Subdevice number, -1 first available (default -1)
|
||||
|
||||
|
||||
type hooks # PCM with hooks
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
# or
|
||||
slave { # Slave definition
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
}
|
||||
hooks {
|
||||
ID STR # Hook name (see pcm_hook)
|
||||
# or
|
||||
ID { } # Hook definition (see pcm_hook)
|
||||
}
|
||||
|
||||
type plug # Format adjusted PCM
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
# or
|
||||
slave { # Slave definition
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
[format STR] # Slave format (default nearest) or "unchanged"
|
||||
[channels INT] # Slave channels (default nearest) or "unchanged"
|
||||
[rate INT] # Slave rate (default nearest) or "unchanged"
|
||||
}
|
||||
route_policy STR # route policy for automatic ttable generation
|
||||
# STR can be 'default', 'average', 'copy', 'duplicate'
|
||||
# average: result is average of input channels
|
||||
# copy: only first channels are copied to destination
|
||||
# duplicate: duplicate first set of channels
|
||||
# default: copy policy, except for mono capture - sum
|
||||
ttable { # Transfer table (bidimensional compound of
|
||||
# cchannels * schannels numbers)
|
||||
CCHANNEL {
|
||||
SCHANNEL REAL # route value (0.0 ... 1.0)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
type copy # Copy conversion PCM
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
# or
|
||||
slave { # Slave definition
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
}
|
||||
|
||||
|
||||
type linear # Linear format conversion PCM
|
||||
type adpcm # IMA-ADPCM format conversion PCM
|
||||
type alaw # A-Law format conversion PCM
|
||||
type mulaw # Mu-Law format conversion PCM
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
# or
|
||||
slave { # Slave definition
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
format STR # Slave format
|
||||
}
|
||||
|
||||
|
||||
type rate # Rate conversion PCM
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
# or
|
||||
slave { # Slave definition
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
[format STR] # Slave format (default client format)
|
||||
rate INT # Slave rate
|
||||
}
|
||||
|
||||
|
||||
type route # Attenuated static route PCM
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
# or
|
||||
slave { # Slave definition
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
[format STR] # Slave format (default client format)
|
||||
[channels INT] # Slave channels (default client channels)
|
||||
}
|
||||
ttable { # Transfer table (bidimensional compound of
|
||||
# cchannels * schannels numbers)
|
||||
CCHANNEL {
|
||||
SCHANNEL REAL # route value (0.0 ... 1.0)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
type multi # Linked PCMs (exclusive access to selected channels)
|
||||
slaves { # Slaves definitions
|
||||
ID STR # Slave name for slave N (see pcm_slave)
|
||||
# or
|
||||
ID { # Slave definition for slave N
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
channels INT # Slave channels
|
||||
}
|
||||
}
|
||||
bindings { # Bindings table
|
||||
N { # Binding for client channel N
|
||||
slave STR # Slave key
|
||||
channel INT # Slave channel
|
||||
}
|
||||
}
|
||||
[master INT] # Define the master slave
|
||||
|
||||
|
||||
type file # File plugin
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
# or
|
||||
slave { # Slave definition
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
}
|
||||
file STR # File name
|
||||
# or
|
||||
file INT # File descriptor
|
||||
[format STR] # File format (NYI)
|
||||
|
||||
|
||||
type meter # Meter PCM
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
# or
|
||||
slave { # Slave definition or name
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
}
|
||||
[frequency INT] # Updates per second
|
||||
scopes { # Scopes
|
||||
ID STR # Scope name (see pcm_scope)
|
||||
# or
|
||||
ID { } # Scope definition (see pcm_scope)
|
||||
}
|
||||
|
||||
|
||||
type droute # Attenuated dynamic route PCM (NYI)
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
# or
|
||||
slave { # Slave definition
|
||||
pcm STR # Slave PCM name
|
||||
# or
|
||||
pcm { } # Slave PCM definition
|
||||
[format STR] # Slave format (default client format)
|
||||
[channels INT] # Slave channels (default client channels)
|
||||
}
|
||||
ctl STR # Ctl name
|
||||
bindings { # Bindings table
|
||||
ID { # Binding entry
|
||||
cchannels { # Client channels
|
||||
C INT # Client channel
|
||||
}
|
||||
schannel { # Slave channels
|
||||
S INT # Slave channel
|
||||
}
|
||||
control STR # Control name of C * S (or C values: only if C == S)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
type null # Null endpoint plugin
|
||||
[time INT] # Time related or not (NYI)
|
||||
|
||||
|
||||
type shm # Shared memory client PCM
|
||||
server STR # Server name
|
||||
pcm STR # PCM name on server
|
||||
|
||||
|
||||
type share # Share PCM
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
bindings { # Bindings table
|
||||
N INT # Slave channel for client channel N
|
||||
}
|
||||
|
||||
|
||||
type mix # Mix PCM
|
||||
slave STR # Slave name (see pcm_slave)
|
||||
bindings { # Bindings table
|
||||
N INT # Slave channel for client channel N
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
# CTL type definition
|
||||
ctl_type.NAME {
|
||||
[lib STR] # Library file (default libasound.so)
|
||||
[open STR] # Open function (default _snd_ctl_NAME_open)
|
||||
}
|
||||
|
||||
# CTL definition
|
||||
ctl.NAME {
|
||||
type STR # Type
|
||||
[comment ANY] # Saved comments
|
||||
|
||||
# CTL types
|
||||
type hw
|
||||
card STR/INT # Card name or number
|
||||
|
||||
|
||||
type shm # Shared memory client CTL
|
||||
server STR # Server name
|
||||
ctl STR # CTL name on server
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
# RAWMIDI type definition
|
||||
rawmidi_type.NAME {
|
||||
[lib STR] # Library file (default libasound.so)
|
||||
[open STR] # Open function (default _snd_rawmidi_NAME_open)
|
||||
}
|
||||
|
||||
# RAWMIDI definition
|
||||
rawmidi.NAME {
|
||||
type STR # Type
|
||||
[comment ANY] # Saved comments
|
||||
|
||||
# RAWMIDI types:
|
||||
type hw # Kernel RAWMIDI
|
||||
card INT/STR # Card name or number
|
||||
[device] INT # Device number (default 0)
|
||||
[subdevice] INT # Subdevice number, -1 first available (default -1)
|
||||
|
||||
|
||||
}
|
||||
|
||||
# SEQ type definition
|
||||
seq_type.NAME {
|
||||
[lib STR] # Library file (default libasound.so)
|
||||
[open STR] # Open function (default _snd_seq_NAME_open)
|
||||
}
|
||||
|
||||
# SEQ definition
|
||||
seq.NAME {
|
||||
type STR # Type
|
||||
[comment ANY] # Saved comments
|
||||
|
||||
# SEQ types:
|
||||
type hw # Kernel SEQ
|
||||
|
||||
|
||||
}
|
||||
|
||||
# Aliases
|
||||
DEF.NAME1 NAME2 # DEF.NAME1 is an alias for DEF.NAME2
|
||||
|
||||
Some examples:
|
||||
|
||||
pcm.trident {
|
||||
type hw
|
||||
card 0
|
||||
device 0
|
||||
}
|
||||
|
||||
pcm.ice1712 {
|
||||
type hw
|
||||
card 1
|
||||
device 0
|
||||
}
|
||||
|
||||
pcm.ice1712_spdif {
|
||||
type plug
|
||||
ttable.0.8 1
|
||||
ttable.1.9 1
|
||||
slave.pcm ice1712
|
||||
}
|
||||
|
||||
pcm_slave.rs {
|
||||
pcm trident
|
||||
rate 44100
|
||||
}
|
||||
|
||||
pcm.r {
|
||||
type rate
|
||||
slave rs
|
||||
}
|
||||
|
||||
pcm.m {
|
||||
type meter
|
||||
slave.pcm plug:trident
|
||||
frequency 50
|
||||
scopes [
|
||||
{
|
||||
type level
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
pcm_scope_type.level {
|
||||
lib /home/abramo/scopes/liblevel.so
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue