summaryrefslogtreecommitdiff
path: root/alsactl/alsactl.1
blob: 8296663a7c2dca62b86f335af1833d81ab3e6dd2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
.TH ALSACTL 1 "07 May 2014"
.SH NAME
alsactl \- advanced controls for ALSA soundcard driver

.SH SYNOPSIS

\fBalsactl\fP [\fIoptions\fP] [\fIstore\fP|\fIrestore\fP|\fIinit\fP] <card # or id or device>

\fBalsactl\fP \fImonitor\fP <card # or id>

\fBalsactl\fP [\fIclean\fP] <card # or id or device> [[control identifiers]]

.SH DESCRIPTION
\fBalsactl\fP is used to control advanced settings for the ALSA
soundcard drivers. It supports multiple soundcards. If your card has
features that you can't seem to control from a mixer application,
you have come to the right place.

.SH COMMANDS

.SS Introduction

The \fI<card>\fP argument is optional. If no soundcards are specified,
setup for all cards will be saved, loaded or monitored.

.SS store <card>

This command saves the current driver state for the selected soundcard
to the configuration file.

.SS restore <card>

This command loads driver state for the selected soundcard from the
configuration file. If restoring fails (eventually partly), the init
action is called.

.SS nrestore <card>

This command is like \fIrestore\fP, but it notifies also the daemon
to do new rescan for available soundcards.

.SS init <card>

This command tries to initialize all devices to a default state. If device
is not known, error code 99 is returned.

.SS daemon

This command manages to save periodically the sound state.

.SS rdaemon

This command is like \fIdaemon\fP but restore the sound state at first.

.SS kill <cmd>

This command notifies the daemon to do the specified operation (quit,
rescan, save_and_quit).

.SS monitor <card>

This command is for monitoring the events received from the given
control device.

.SS clean <card> [filter]

This command cleans the controls created by applications.

The optional element identifiers are accepted as a filter. One extra
argument is parsed as an element identifiers.

\fIExample:\fP alsactl clean 0 "name='PCM'" "name='Mic Phantom'"

.SS dump-state

This command dumps the current state (all cards) to stdout.

.SS dump-cfg

This command dumps the current configuration (all cards) to stdout.
Note that the configuration hooks are evaluated.

.SH OPTIONS

.TP
\fI\-h, \-\-help\fP 
Help: show available flags and commands.

.TP
\fI\-d, \-\-debug\fP
Use debug mode: a bit more verbose.

.TP
\fI\-v, \-\-version\fP
Print alsactl version number.

.TP
\fI\-f, \-\-file\fP
Select the configuration file to use. The default is /var/lib/alsa/asound.state.

.TP
\fI\-a, \-\-config-dir\fP
Select the boot / hotplug ALSA configuration directory to use. The default is /var/lib/alsa.

.TP
\fI\-l, \-\-lock\fP
Use the file locking to serialize the concurrent access to the state file (this
option is default for the global state file).

.TP
\fI\-L, \-\-no-lock\fP
Do not use the file locking to serialize the concurrent access to the state
file (including the global state file).

.TP
\fI\-O, \-\-lock-state-file\fP
Select the state lock file path.

.TP
\fI\-F, \-\-force\fP
Used with restore command.  Try to restore the matching control elements
as much as possible.  This option is set as default now.

.TP
\fI\-g, \-\-ignore\fP
Used with store, restore and init commands. Do not show 'No soundcards found'
and do not set an error exit code when soundcards are not installed.

.TP
\fI\-P, \-\-pedantic\fP
Used with restore command.  Don't restore mismatching control elements.
This option was the old default behavior.

.TP
\fI\-I, \-\-no\-init\-fallback\fP
Don't initialize cards if restore fails.  Since version 1.0.18,
\fBalsactl\fP tries to initialize the card with the restore operation
as default.  But this can cause incompatibility with the older version.
The caller may expect that the state won't be touched if no state file
exists.  This option takes the restore behavior back to the older
version by suppressing the initialization.

.TP
\fI\-r, \-\-runstate\fP
Save restore and init state to this file. The file will contain only errors.
Errors are appended with the soundcard id to the end of file.

.TP
\fI\-R, \-\-remove\fP
Remove runstate file at first.

.TP
\fI\-E, \-\-env\fP #=#
Set environment variable (useful for init action or you may override
ALSA_CONFIG_PATH to read different or optimized configuration - may be
useful for "boot" scripts).

.TP
\fI\-i, \-\-initfile\fP
The configuration file for init. By default, PREFIX/share/alsa/init/00main
is used.

.TP
\fI\-p, \-\-period\fP
The store period in seconds for the daemon command.

.TP
\fI\-e, \-\-pid-file\fP
The pathname to store the process-id file in the HDB UUCP format (ASCII).

.TP
\fI\-b, \-\-background\fP
Run the task in background.

.TP
\fI\-s, \-\-syslog\fP
Use syslog for messages.

.TP
\fI\-n, \-\-nice\fP
Set the process priority (see 'man nice')

.TP
\fI\-c, \-\-sched-idle\fP
Set the process scheduling policy to idle (SCHED_IDLE).

.TP
\fI\-D, \-\-ucm-defaults\fP
Execute also the 'defaults' section from the UCM configuration. The standard
behaviour is to execute only 'once' section.

.TP
\fI\-U, \-\-no-ucm\fP
Skip the UCM init even if available. It may be useful for the test the
legacy init configuration.

.SH FILES
\fI/var/lib/alsa/asound.state\fP (or whatever file you specify with the
\fB\-f\fP flag) is used to store current settings for your
soundcards. The settings include all the usual soundcard mixer
settings.  More importantly, alsactl is
capable of controlling other card-specific features that mixer apps
usually don't know about.

The configuration file is generated automatically by running
\fBalsactl store\fP. Editing the configuration file by hand may be
necessary for some soundcard features (e.g. enabling/disabling
automatic mic gain, digital output, joystick/game ports, some future MIDI
routing options, etc).

.SH SEE ALSO
\fB
amixer(1),
alsamixer(1),
aplay(1),
alsactl_init(7)
\fP

.SH BUGS 
None known.

.SH AUTHOR
\fBalsactl\fP is by Jaroslav Kysela <perex@perex.cz> and Abramo Bagnara
<abramo@alsa\-project.org>. This document is by Paul Winkler <zarmzarm@erols.com>.