source: multimedia/libdriv/alsa-utils.xml@ a40efd2c

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since a40efd2c was a40efd2c, checked in by DJ Lucas <dj@…>, 19 years ago

updated alsa restore script for new udev

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@5037 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 12.2 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY alsa-utils-download-http "&alsa-download-http;/utils/alsa-utils-&alsa-utils-version;.tar.bz2">
8 <!ENTITY alsa-utils-download-ftp "&alsa-download-ftp;/utils/alsa-utils-&alsa-utils-version;.tar.bz2">
9 <!ENTITY alsa-utils-md5sum "d4b77e9fe0311772293e402fdd634ad2">
10 <!ENTITY alsa-utils-size "935 KB">
11 <!ENTITY alsa-utils-buildsize "5.9 MB">
12 <!ENTITY alsa-utils-time "0.1 SBU">
13]>
14
15<sect1 id="alsa-utils" xreflabel="ALSA Utilities-&alsa-utils-version;">
16 <?dbhtml filename="alsa-utils.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>ALSA Utilities-&alsa-utils-version;</title>
24
25 <indexterm zone="alsa-utils">
26 <primary sortas="a-ALSA-Utilities">ALSA Utilities</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to ALSA Utilities</title>
31
32 <para>The <application>ALSA Utilities</application> package contains
33 various utilities which are useful for controlling your sound card.</para>
34
35 <bridgehead renderas="sect3">Package Information</bridgehead>
36 <itemizedlist spacing="compact">
37 <listitem>
38 <para>Download (HTTP): <ulink url="&alsa-utils-download-http;"/></para>
39 </listitem>
40 <listitem>
41 <para>Download (FTP): <ulink url="&alsa-utils-download-ftp;"/></para>
42 </listitem>
43 <listitem>
44 <para>Download MD5 sum: &alsa-utils-md5sum;</para>
45 </listitem>
46 <listitem>
47 <para>Download size: &alsa-utils-size;</para>
48 </listitem>
49 <listitem>
50 <para>Estimated disk space required: &alsa-utils-buildsize;</para>
51 </listitem>
52 <listitem>
53 <para>Estimated build time: &alsa-utils-time;</para>
54 </listitem>
55 </itemizedlist>
56
57 <bridgehead renderas="sect3">ALSA Utilities Dependencies</bridgehead>
58
59 <bridgehead renderas="sect4">Required</bridgehead>
60 <para><xref linkend="alsa-lib"/></para>
61
62 </sect2>
63
64 <sect2 role="installation">
65 <title>Installation of ALSA Utilities</title>
66
67 <para>Install <application>ALSA Utilities</application> by
68 running the following commands:</para>
69
70<screen><userinput>./configure &amp;&amp;
71make</userinput></screen>
72
73 <para>This package does not come with a test suite.</para>
74
75 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
76
77<screen role="root"><userinput>make install</userinput></screen>
78
79 </sect2>
80
81 <sect2 role="configuration">
82 <title>Configuring ALSA Utilities</title>
83
84 <sect3 id="alsa-utils-config">
85 <title>Config Files</title>
86
87 <para><filename>/etc/asound.state</filename></para>
88
89 <indexterm zone="alsa-utils alsa-utils-config">
90 <primary sortas="e-etc-asound.state">/etc/asound.state</primary>
91 </indexterm>
92
93 </sect3>
94
95 <sect3 id="alsa-utils-init">
96 <title>Configuration Information</title>
97
98 <para> Use a bootscript to store the values at shutdown.</para>
99
100 <indexterm zone="alsa-utils alsa-utils-init">
101 <primary sortas="f-alsa">alsa</primary>
102 </indexterm>
103
104 <para>As the <systemitem class="username">root</systemitem> user,
105 install the init script <filename>/etc/rc.d/init.d/alsa</filename> included
106 in the <xref linkend="intro-important-bootscripts"/> package.</para>
107
108<screen role="root"><userinput>make install-alsa</userinput></screen>
109
110 <para>Note that all channels of your sound card are muted by default.
111 You can use the <command>alsamixer</command> program from the
112 <application>ALSA Utilities</application> to change this.</para>
113
114 <para>The first time the <filename>alsa-restore</filename>
115 script below is run, it will complain
116 that there is no state in <filename>/etc/asound.state</filename>.
117 You can prevent this by running the following commands as
118 the <systemitem class="username">root</systemitem> user:</para>
119
120<screen role="root"><userinput>touch /etc/asound.state &amp;&amp;
121alsactl store</userinput></screen>
122
123 <para>The volume settings will be restored from the saved state using a
124 shell script called by <application>Udev</application> that will
125 execute when the device is detected (during boot or when plugged in for
126 USB devices).</para>
127
128 <para> While still the
129 <systemitem class="username">root</systemitem> user, create the
130 <filename>/etc/udev/scripts/alsa-restore</filename> script with
131 the following commands:</para>
132
133<screen role="root"><userinput>install -v -d -m754 /etc/udev/scripts &amp;&amp;
134cat &gt; /etc/udev/scripts/alsa-restore &lt;&lt; "EOF"
135#!/bin/sh -e
136# Begin /etc/udev/scripts/alsa-restore
137# $1 is (the numbered device "%n") passed in by udev/kernel.
138
139x=0
140
141# Give up to 20 seconds for /usr to be mounted
142while [ "${x}" -lt 20 ]
143do
144 sleep 1
145 if [ -f /usr/sbin/alsactl ]; then
146 /usr/sbin/alsactl restore "${1}"
147 exit 0
148 fi
149 x=`expr "${x}" + 1`
150done &amp; # Put the loop in the background
151
152# End /etc/udev/scripts/alsa-restore
153EOF
154chmod -v 754 /etc/udev/scripts/alsa-restore</userinput></screen>
155
156 <para>Finally, again as the
157 <systemitem class="username">root</systemitem> user, install a new
158 <application>Udev</application> rules file to create the audio
159 device nodes and run the restore script:</para>
160
161<screen role="root"><userinput>cat &gt; /etc/udev/rules.d/15-alsa.rules &lt;&lt; "EOF"
162# Give the audio group ownership of sound devices
163SUBSYSTEM=="sound", GROUP="audio"
164SUBSYSTEM=="snd", GROUP="audio"
165
166# ALSA Devices
167# When a sound device is detected, restore the volume settings
168KERNEL=="controlC[0-9]*", ACTION=="add", NAME="snd/%k", RUN="/etc/udev/scripts/alsa-restore %n"
169KERNEL="hw[CD0-9]*", NAME="snd/%k"
170KERNEL="pcm[CD0-9cp]*", NAME="snd/%k"
171KERNEL="midiC[D0-9]*", NAME="snd/%k"
172KERNEL="timer", NAME="snd/%k"
173KERNEL="seq", NAME="snd/%k"
174EOF
175chmod 644 /etc/udev/rules.d/15-alsa.rules</userinput></screen>
176
177 </sect3>
178
179 </sect2>
180
181 <sect2 role="content">
182 <title>Contents</title>
183
184 <segmentedlist>
185 <segtitle>Installed Programs</segtitle>
186 <segtitle>Installed Libraries</segtitle>
187 <segtitle>Installed Directories</segtitle>
188
189 <seglistitem>
190 <seg>aconnect, alsaconf, alsactl, alsamixer, amidi, amixer, aplay, aplaymidi,
191 arecord, arecordmidi, aseqnet, aseqdump, iecset, and speaker-test</seg>
192 <seg>None</seg>
193 <seg>None</seg>
194 </seglistitem>
195 </segmentedlist>
196
197 <variablelist>
198 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
199 <?dbfo list-presentation="list"?>
200 <?dbhtml list-presentation="table"?>
201
202 <varlistentry id="aconnect">
203 <term><command>aconnect</command></term>
204 <listitem>
205 <para>is a utility for connecting and disconnecting two existing
206 ports in the ALSA sequencer system.</para>
207 <indexterm zone="alsa-utils aconnect">
208 <primary sortas="b-aconnect">aconnect</primary>
209 </indexterm>
210 </listitem>
211 </varlistentry>
212
213 <varlistentry id="alsaconf">
214 <term><command>alsaconf</command></term>
215 <listitem>
216 <para>is a configuration tool which tries to detect the sound cards
217 on your system and write a suitable configuration file for ALSA.</para>
218 <indexterm zone="alsa-utils alsaconf">
219 <primary sortas="b-alsaconf">alsaconf</primary>
220 </indexterm>
221 </listitem>
222 </varlistentry>
223
224 <varlistentry id="alsactl">
225 <term><command>alsactl</command></term>
226 <listitem>
227 <para>is used to control advanced settings for the
228 ALSA sound card drivers.</para>
229 <indexterm zone="alsa-utils alsactl">
230 <primary sortas="b-alsactl">alsactl</primary>
231 </indexterm>
232 </listitem>
233 </varlistentry>
234
235 <varlistentry id="alsamixer">
236 <term><command>alsamixer</command></term>
237 <listitem>
238 <para>is an ncurses-based mixer program for use with the
239 ALSA sound card drivers.</para>
240 <indexterm zone="alsa-utils alsamixer">
241 <primary sortas="b-alsamixer">alsamixer</primary>
242 </indexterm>
243 </listitem>
244 </varlistentry>
245
246 <varlistentry id="amidi">
247 <term><command>amidi</command></term>
248 <listitem>
249 <para>is used to read from and write to ALSA
250 RawMIDI ports.</para>
251 <indexterm zone="alsa-utils amidi">
252 <primary sortas="b-amidi">amidi</primary>
253 </indexterm>
254 </listitem>
255 </varlistentry>
256
257 <varlistentry id="amixer">
258 <term><command>amixer</command></term>
259 <listitem>
260 <para> allows command-line control of the mixers for the
261 ALSA sound card drivers.</para>
262 <indexterm zone="alsa-utils amixer">
263 <primary sortas="b-amixer">amixer</primary>
264 </indexterm>
265 </listitem>
266 </varlistentry>
267
268 <varlistentry id="aplay">
269 <term><command>aplay</command></term>
270 <listitem>
271 <para>is a command-line soundfile player for the
272 ALSA sound card drivers.</para>
273 <indexterm zone="alsa-utils aplay">
274 <primary sortas="b-aplay">aplay</primary>
275 </indexterm>
276 </listitem>
277 </varlistentry>
278
279 <varlistentry id="aplaymidi">
280 <term><command>aplaymidi</command></term>
281 <listitem>
282 <para>is a command-line utility that plays the specified
283 MIDI file(s) to one or more ALSA sequencer ports.</para>
284 <indexterm zone="alsa-utils aplaymidi">
285 <primary sortas="b-aplaymidi">aplaymidi</primary>
286 </indexterm>
287 </listitem>
288 </varlistentry>
289
290 <varlistentry id="arecord">
291 <term><command>arecord</command></term>
292 <listitem>
293 <para>is a command-line soundfile recorder for the
294 ALSA sound card drivers.</para>
295 <indexterm zone="alsa-utils arecord">
296 <primary sortas="b-arecord">arecord</primary>
297 </indexterm>
298 </listitem>
299 </varlistentry>
300
301 <varlistentry id="arecordmidi">
302 <term><command>arecordmidi</command></term>
303 <listitem>
304 <para>is a command-line utility that records a standard
305 MIDI file from one or more ALSA sequencer ports.</para>
306 <indexterm zone="alsa-utils arecordmidi">
307 <primary sortas="b-arecordmidi">arecordmidi</primary>
308 </indexterm>
309 </listitem>
310 </varlistentry>
311
312 <varlistentry id="aseqdump">
313 <term><command>aseqdump</command></term>
314 <listitem>
315 <para>is a command-line utility that prints the sequencer events it
316 receives as text.</para>
317 <indexterm zone="alsa-utils aseqdump">
318 <primary sortas="b-aseqdump">aseqdump</primary>
319 </indexterm>
320 </listitem>
321 </varlistentry>
322
323 <varlistentry id="aseqnet">
324 <term><command>aseqnet</command></term>
325 <listitem>
326 <para>is an ALSA sequencer client which sends
327 and receives event packets over a network.</para>
328 <indexterm zone="alsa-utils aseqnet">
329 <primary sortas="b-aseqnet">aseqnet</primary>
330 </indexterm>
331 </listitem>
332 </varlistentry>
333
334 <varlistentry id="iecset">
335 <term><command>iecset</command></term>
336 <listitem>
337 <para>is a small utility to set or dump the IEC958 (or so-called
338 <quote>S/PDIF</quote>) status bits of the specified sound
339 card via the ALSA control API.</para>
340 <indexterm zone="alsa-utils iecset">
341 <primary sortas="b-iecset">iecset</primary>
342 </indexterm>
343 </listitem>
344 </varlistentry>
345
346 <varlistentry id="speaker-test">
347 <term><command>speaker-test</command></term>
348 <listitem>
349 <para>is a command-line speaker test tone generator for ALSA.</para>
350 <indexterm zone="alsa-utils speaker-test">
351 <primary sortas="b-speaker-test">speaker-test</primary>
352 </indexterm>
353 </listitem>
354 </varlistentry>
355
356 </variablelist>
357
358 </sect2>
359
360</sect1>
Note: See TracBrowser for help on using the repository browser.