/[gentoo]/xml/htdocs/doc/en/alsa-guide.xml
Gentoo

Diff of /xml/htdocs/doc/en/alsa-guide.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.79 Revision 1.80
1<?xml version='1.0' encoding="UTF-8"?> 1<?xml version='1.0' encoding="UTF-8"?>
2<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/alsa-guide.xml,v 1.79 2007/05/07 07:08:24 nightmorph Exp $ --> 2<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/alsa-guide.xml,v 1.80 2007/05/19 03:00:29 nightmorph Exp $ -->
3 3
4<!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> 4<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
5 5
6<guide link="/doc/en/alsa-guide.xml"> 6<guide link="/doc/en/alsa-guide.xml">
7<title>Gentoo Linux ALSA Guide</title> 7<title>Gentoo Linux ALSA Guide</title>
8 8
9<author title="Author"> 9<author title="Author">
10 <mail link="fox2mike@gentoo.org">Shyam Mani</mail> 10 <mail link="fox2mike@gentoo.org">Shyam Mani</mail>
11</author> 11</author>
12<author title="Author"> 12<author title="Author">
13 <mail link="nightmorph@gentoo.org">Joshua Saddler</mail> 13 <mail link="nightmorph@gentoo.org">Joshua Saddler</mail>
14</author> 14</author>
15<author title="Contributor"> 15<author title="Contributor">
16 <mail link="flameeyes@gentoo.org">Diego Pettenò</mail> 16 <mail link="flameeyes@gentoo.org">Diego Pettenò</mail>
17</author> 17</author>
22 22
23<!-- The content of this document is licensed under the CC-BY-SA license --> 23<!-- The content of this document is licensed under the CC-BY-SA license -->
24<!-- See http://creativecommons.org/licenses/by-sa/2.5 --> 24<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
25<license/> 25<license/>
26 26
27<version>2.22</version> 27<version>2.22</version>
28<date>2007-05-07</date> 28<date>2007-05-07</date>
29 29
30<chapter> 30<chapter>
31<title>Introduction</title> 31<title>Introduction</title>
32<section> 32<section>
33<title>What is ALSA?</title> 33<title>What is ALSA?</title>
34<body> 34<body>
35 35
36<p> 36<p>
37ALSA, which stands for <e>Advanced Linux Sound Architecture</e>, provides 37ALSA, which stands for <e>Advanced Linux Sound Architecture</e>, provides
38audio and MIDI (<e>Musical Instrument Digital Interface</e>) functionality to 38audio and MIDI (<e>Musical Instrument Digital Interface</e>) functionality to
39the Linux operating system. ALSA is the default sound subsystem in the 2.6 39the Linux operating system. ALSA is the default sound subsystem in the 2.6
40kernel thereby replacing OSS (<e>Open Sound System</e>), which was used in the 40kernel thereby replacing OSS (<e>Open Sound System</e>), which was used in the
412.4 kernels. 412.4 kernels.
42</p> 42</p>
43 43
44<p> 44<p>
45ALSA's main features include efficient support for all types of audio 45ALSA's main features include efficient support for all types of audio
46interfaces ranging from consumer sound cards to professional sound 46interfaces ranging from consumer sound cards to professional sound
47equipment, fully modularized drivers, SMP and thread safety, backward 47equipment, fully modularized drivers, SMP and thread safety, backward
48compatibility with OSS and a user-space library <c>alsa-lib</c> to make 48compatibility with OSS and a user-space library <c>alsa-lib</c> to make
49application development a breeze. 49application development a breeze.
50</p> 50</p>
51 51
52</body> 52</body>
53</section> 53</section>
54<section> 54<section>
55<title>ALSA on Gentoo</title> 55<title>ALSA on Gentoo</title>
56<body> 56<body>
57 57
58<p> 58<p>
59One of Gentoo's main strengths lies in giving the user maximum control over 59One of Gentoo's main strengths lies in giving the user maximum control over
60how a system is installed/configured. ALSA on Gentoo follows the same 60how a system is installed/configured. ALSA on Gentoo follows the same
61principle. There are two ways you can get ALSA support up and running on your 61principle. There are two ways you can get ALSA support up and running on your
62system. We shall look at them in detail in the next chapter. 62system. We shall look at them in detail in the next chapter.
63</p> 63</p>
64 64
65</body> 65</body>
66</section> 66</section>
67</chapter> 67</chapter>
68 68
69<chapter> 69<chapter>
70<title>Installing ALSA</title> 70<title>Installing ALSA</title>
71<section> 71<section>
72<title>Options</title> 72<title>Options</title>
73<body> 73<body>
74 74
75<warn> 75<warn>
76The methods shown below are mutually exclusive. You cannot have ALSA compiled 76The methods shown below are mutually exclusive. You cannot have ALSA compiled
77in your kernel and use <c>media-sound/alsa-driver</c>. It <e>will</e> fail. 77in your kernel and use <c>media-sound/alsa-driver</c>. It <e>will</e> fail.
78</warn> 78</warn>
79 79
80<p> 80<p>
81The two options are: 81The two options are:
82</p> 82</p>
83 83
84<ol> 84<ol>
85 <li> 85 <li>
86 Use ALSA provided by your kernel. This is the preferred/recommended method. 86 Use ALSA provided by your kernel. This is the preferred/recommended method.
87 </li> 87 </li>
88 <li>Use Gentoo's <c>media-sound/alsa-driver</c> package.</li> 88 <li>Use Gentoo's <c>media-sound/alsa-driver</c> package.</li>
89</ol> 89</ol>
90 90
91<p> 91<p>
92The in-kernel drivers and the <c>alsa-driver</c> package can vary a little; it's 92The in-kernel drivers and the <c>alsa-driver</c> package can vary a little; it's
93possible that features and fixes found in one might not yet be incorporated into 93possible that features and fixes found in one might not yet be incorporated into
94the other. The upstream developers are aware of this, but the two drivers are 94the other. The upstream developers are aware of this, but the two drivers are
95effectively separate branches of the ALSA project; they are not entirely 95effectively separate branches of the ALSA project; they are not entirely
96identical. You should be aware that they might function slightly differently, so 96identical. You should be aware that they might function slightly differently, so
97if one doesn't work for you, try the other! We shall take a peek into both 97if one doesn't work for you, try the other! We shall take a peek into both
98before finally deciding on one. 98before finally deciding on one.
99</p> 99</p>
100 100
101<p> 101<p>
102If you were to use ALSA provided by the kernel, the following are the pros and 102If you were to use ALSA provided by the kernel, the following are the pros and
103cons: 103cons:
104</p> 104</p>
105 105
106<table> 106<table>
107<tr> 107<tr>
108 <th>Kernel ALSA</th> 108 <th>Kernel ALSA</th>
109 <th>Pros and Cons</th> 109 <th>Pros and Cons</th>
110</tr> 110</tr>
111<tr> 111<tr>
112 <th>+</th> 112 <th>+</th>
113 <ti> 113 <ti>
114 No need to emerge yet another package; drivers are integrated into kernel. 114 No need to emerge yet another package; drivers are integrated into kernel.
115 </ti> 115 </ti>
116</tr> 116</tr>
117<tr> 117<tr>
162quite subtle, as mentioned earlier. Since there are not any huge differences, 162quite subtle, as mentioned earlier. Since there are not any huge differences,
163you are encouraged to go through the process of using the ALSA provided by the 163you are encouraged to go through the process of using the ALSA provided by the
164kernel <e>first</e> for ease of use. Before reporting any sound related issues 164kernel <e>first</e> for ease of use. Before reporting any sound related issues
165to <uri link="https://bugs.gentoo.org">Gentoo Bugzilla</uri>, please try to 165to <uri link="https://bugs.gentoo.org">Gentoo Bugzilla</uri>, please try to
166reproduce them using <c>alsa-driver</c> and file the bug report no matter what 166reproduce them using <c>alsa-driver</c> and file the bug report no matter what
167the result. 167the result.
168</p> 168</p>
169 169
170</body> 170</body>
171</section> 171</section>
172<section id="lspci"> 172<section id="lspci">
173<title>Before you proceed</title> 173<title>Before you proceed</title>
174<body> 174<body>
175 175
176<p> 176<p>
177Whichever method of install you choose, you need to know what drivers your 177Whichever method of install you choose, you need to know what drivers your
178sound card uses. In most cases, sound cards (onboard and otherwise) are PCI 178sound card uses. In most cases, sound cards (onboard and otherwise) are PCI
179based and <c>lspci</c> will help you in digging out the required information. 179based and <c>lspci</c> will help you in digging out the required information.
180Please <c>emerge sys-apps/pciutils</c> to get <c>lspci</c>, if you don't have it 180Please <c>emerge sys-apps/pciutils</c> to get <c>lspci</c>, if you don't have it
181installed already. In case you have a USB sound card, <c>lsusb</c> from 181installed already. In case you have a USB sound card, <c>lsusb</c> from
182<c>sys-apps/usbutils</c> <e>might</e> be of help. For ISA cards, try using 182<c>sys-apps/usbutils</c> <e>might</e> be of help. For ISA cards, try using
183<c>sys-apps/isapnptools</c>. Also, the following pages <e>may</e> help users 183<c>sys-apps/isapnptools</c>. Also, the following pages <e>may</e> help users
184with ISA based sound cards. 184with ISA based sound cards:
185</p> 185</p>
186 186
187<ul> 187<ul>
188 <li> 188 <li>
189 <uri link="http://www.roestock.demon.co.uk/isapnptools/">The ISAPNPTOOLS 189 <uri link="http://www.roestock.demon.co.uk/isapnptools/">The ISAPNPTOOLS
190 Page</uri> 190 Page</uri>
191 </li> 191 </li>
192 <li> 192 <li>
193 <uri link="http://www2.linuxjournal.com/article/3269">LinuxJournal PnP 193 <uri link="http://www2.linuxjournal.com/article/3269">LinuxJournal PnP
194 Article</uri> 194 Article</uri>
195 </li> 195 </li>
196 <li> 196 <li>
197 <uri link="http://www.tldp.org/HOWTO/Sound-HOWTO/x320.html">TLDP Sound 197 <uri link="http://www.tldp.org/HOWTO/Sound-HOWTO/x320.html">TLDP Sound
198 HowTo</uri> 198 HowTo</uri>
199 </li> 199 </li>
205</note> 205</note>
206 206
207<p> 207<p>
208We now proceed to find out details about the sound card. 208We now proceed to find out details about the sound card.
209</p> 209</p>
210 210
211<pre caption="Soundcard Details"> 211<pre caption="Soundcard Details">
212# <i>lspci -v | grep -i audio</i> 212# <i>lspci -v | grep -i audio</i>
2130000:00:0a.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 06) 2130000:00:0a.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 06)
214</pre> 214</pre>
215 215
216<p> 216<p>
217We now know that the sound card on the machine is a Sound Blaster Live! and the 217We now know that the sound card on the machine is a Sound Blaster Live! and the
218card manufacturer is Creative Labs. Head over to the <uri 218card manufacturer is Creative Labs. Head over to the <uri
219link="http://bugtrack.alsa-project.org/main/index.php/Matrix:Main">ALSA 219link="http://bugtrack.alsa-project.org/main/index.php/Matrix:Main">ALSA
220Soundcard Matrix</uri> page and select Creative Labs from the drop down menu. 220Soundcard Matrix</uri> page and select Creative Labs from the list. You will
221You will be taken to the Creative Labs matrix page where you can see that the SB 221be taken to the Creative Labs matrix page where you can see that the SB Live!
222Live! uses the <c>emu10k1</c> module. That is the information we need for now. 222uses the <c>emu10k1</c> module. That is the information we need for now. If
223If you are interested in detailed information, you can click on the link next to 223you are interested in detailed information, you can click on the link next to
224the "Details" and that will take you to the <c>emu10k1</c> specific page. 224the "Details" and that will take you to the <c>emu10k1</c> specific page.
225</p> 225</p>
226 226
227<p> 227<p>
228If you intend to use MIDI, then you should add <c>midi</c> to your USE flags in 228If you intend to use MIDI, then you should add <c>midi</c> to your USE flags in
229<path>/etc/make.conf</path> before emerging any ALSA packages. Later in the 229<path>/etc/make.conf</path> before emerging any ALSA packages. Later in the
230guide, we will show you how to set up <uri link="#midi">MIDI support</uri>. 230guide, we will show you how to set up <uri link="#midi">MIDI support</uri>.
231</p> 231</p>
232 232
233</body> 233</body>
234</section> 234</section>
235<section id="kernel"> 235<section id="kernel">
236<title>Using ALSA provided by your Kernel</title> 236<title>Using ALSA provided by your Kernel</title>
237<body> 237<body>
238 238
260# <i>cd /usr/src/linux</i> 260# <i>cd /usr/src/linux</i>
261# <i>make menuconfig</i> 261# <i>make menuconfig</i>
262</pre> 262</pre>
263 263
264<note> 264<note>
265The above example assumes that <path>/usr/src/linux</path> symlink points to 265The above example assumes that <path>/usr/src/linux</path> symlink points to
266the kernel sources you want to use. Please ensure the same before proceeding. 266the kernel sources you want to use. Please ensure the same before proceeding.
267</note> 267</note>
268 268
269<p> 269<p>
270Now we will look at some of the options we will have to enable in the 2.6 270Now we will look at some of the options we will have to enable in the 2.6
271kernel to ensure proper ALSA support for our sound card. 271kernel to ensure proper ALSA support for our sound card.
272</p> 272</p>
273 273
274<p> 274<p>
275Please note that for ease of use, all examples show ALSA built as modules. It 275Please note that for ease of use, all examples show ALSA built as modules. It
276is advisable to follow the same as it then allows the use of <c>alsaconf</c> 276is advisable to follow the same as it then allows the use of <c>alsaconf</c>
277which is a boon when you want to configure your card. Please do <e>not</e> skip 277which is a boon when you want to configure your card. Please do <e>not</e> skip
278the <uri link="#alsa-config">Configuration</uri> section of this document. If 278the <uri link="#alsa-config">Configuration</uri> section of this document. If
279you still like to have options built-in, ensure that you make changes to your 279you still like to have options built-in, ensure that you make changes to your
280config accordingly. 280config accordingly.
281</p> 281</p>
282 282
283<pre caption="Kernel Options for ALSA"> 283<pre caption="Kernel Options for ALSA">
284Device Drivers ---&gt; 284Device Drivers ---&gt;
285 Sound ---&gt; 285 Sound ---&gt;
286 286
287<comment>(This needs to be enabled)</comment> 287<comment>(This needs to be enabled)</comment>
288&lt;M&gt; Sound card support 288&lt;M&gt; Sound card support
289 289
290<comment>(Make sure OSS is disabled)</comment> 290<comment>(Make sure OSS is disabled)</comment>
291Open Sound System ---&gt; 291Open Sound System ---&gt;
292 &lt; &gt; Open Sound System (DEPRECATED) 292 &lt; &gt; Open Sound System (DEPRECATED)
293 293
294<comment>(Move one step back and enter ALSA)</comment> 294<comment>(Move one step back and enter ALSA)</comment>
295Advanced Linux Sound Architecture ---&gt; 295Advanced Linux Sound Architecture ---&gt;
296 &lt;M&gt; Advanced Linux Sound Architecture 296 &lt;M&gt; Advanced Linux Sound Architecture
297 <comment>(Select this if you want MIDI sequencing and routing)</comment> 297 <comment>(Select this if you want MIDI sequencing and routing)</comment>
298 &lt;M&gt; Sequencer support 298 &lt;M&gt; Sequencer support
299 <comment>(Old style /dev/mixer* and /dev/dsp* support. Recommended.)</comment> 299 <comment>(Old style /dev/mixer* and /dev/dsp* support. Recommended.)</comment>
300 &lt;M&gt; OSS Mixer API 300 &lt;M&gt; OSS Mixer API
301 &lt;M&gt; OSS PCM (digital audio) API 301 &lt;M&gt; OSS PCM (digital audio) API
302 302
303<comment>(You now have a choice of devices to enable support for. Generally, 303<comment>(You now have a choice of devices to enable support for. Generally,
304you will have one type of device and not more. If you have more than one 304you will have one type of device and not more. If you have more than one
305sound card, please enable them all here.)</comment> 305sound card, please enable them all here.)</comment>
306 306
307<comment>(Mostly for testing and development purposes, not needed for normal 307<comment>(Mostly for testing and development purposes, not needed for normal
308users unless you know what you are doing.)</comment> 308users unless you know what you are doing.)</comment>
309Generic devices ---&gt; 309Generic devices ---&gt;
310 310
311<comment>(For ISA Sound cards)</comment> 311<comment>(For ISA Sound cards)</comment>
312ISA devices ---&gt; 312ISA devices ---&gt;
313<comment>(IF you had the Gravis, you would select this option)</comment> 313<comment>(IF you had the Gravis, you would select this option)</comment>
314 &lt;M&gt; Gravis UltraSound Extreme 314 &lt;M&gt; Gravis UltraSound Extreme
315 315
316<comment>(Move one level back and into PCI devices. Most sound cards today are 316<comment>(Move one level back and into PCI devices. Most sound cards today are
317PCI devices)</comment> 317PCI devices)</comment>
318PCI devices ---&gt; 318PCI devices ---&gt;
319 <comment>(We now select the emu10k1 driver for our card)</comment> 319 <comment>(We now select the emu10k1 driver for our card)</comment>
320 &lt;M&gt; Emu10k1 (SB Live!, Audigy, E-mu APS) 320 &lt;M&gt; Emu10k1 (SB Live!, Audigy, E-mu APS)
321 <comment>(Or an Intel card would be)</comment> 321 <comment>(Or an Intel card would be)</comment>
322 &lt;M&gt; Intel/SiS/nVidia/AMD/ALi AC97 Controller 322 &lt;M&gt; Intel/SiS/nVidia/AMD/ALi AC97 Controller
323 <comment>(Or if you have a VIA Card)</comment> 323 <comment>(Or if you have a VIA Card)</comment>
324 &lt;M&gt; VIA 82C686A/B, 8233/8235 AC97 Controller 324 &lt;M&gt; VIA 82C686A/B, 8233/8235 AC97 Controller
325 325
326<comment>(Move one level back and select in case you have an USB sound card)</comment> 326<comment>(Move one level back and select in case you have an USB sound card)</comment>
327USB Devices ---&gt; 327USB Devices ---&gt;
328</pre> 328</pre>
329 329
330<p> 330<p>
331Now that your options are set, you can (re)compile the kernel and ALSA support 331Now that your options are set, you can (re)compile the kernel and ALSA support
332for your card should be functional once you reboot into the new kernel. Don't 332for your card should be functional once you reboot into the new kernel. Don't
333forget to update your GRUB configuration to use the newly built kernel. 333forget to update your GRUB configuration to use the newly built kernel.
334You can now proceed to <uri link="#alsa-utilities">ALSA Utilities</uri> and 334You can now proceed to <uri link="#alsa-utilities">ALSA Utilities</uri> and
335see if everything is working as it should. 335see if everything is working as it should.
336</p> 336</p>
337 337
338</body> 338</body>
339</section> 339</section>
340<section id="alsa-driver"> 340<section id="alsa-driver">
341<title>Using the ALSA Driver package</title> 341<title>Using the ALSA Driver package</title>
342<body> 342<body>
343 343
344<p> 344<p>
345So you've decided to go the <c>alsa-driver</c> way. Let's get started then. 345So you've decided to go the <c>alsa-driver</c> way. Let's get started then.
346There are a few minor things to be done to ensure only the drivers for your 346There are a few minor things to be done to ensure only the drivers for your
347sound card are compiled. Although this is not really necessary, it cuts down 347sound card are compiled. Although this is not really necessary, it cuts down
348on the unnecessary drivers that will be compiled otherwise. 348on the unnecessary drivers that will be compiled otherwise.
349</p> 349</p>
350 350
351<p> 351<p>
352If you don't have an idea of what drivers your sound card might need, please 352If you don't have an idea of what drivers your sound card might need, please
353take a look at the <uri link="#lspci">lspci</uri> section of this guide. Once 353take a look at the <uri link="#lspci">lspci</uri> section of this guide. Once
354you have your driver name (<c>emu10k1</c> in our example), edit 354you have your driver name (<c>emu10k1</c> in our example), edit
355<path>/etc/make.conf</path> and add a variable, <c>ALSA_CARDS</c>. 355<path>/etc/make.conf</path> and add a variable, <c>ALSA_CARDS</c>.
356</p> 356</p>
357 357
358<pre caption="Adding ALSA_CARDS to make.conf"> 358<pre caption="Adding ALSA_CARDS to make.conf">
359<comment>(For one sound card)</comment> 359<comment>(For one sound card)</comment>
360ALSA_CARDS="emu10k1" 360ALSA_CARDS="emu10k1"
361<comment>(For more than one, separate names with spaces)</comment> 361<comment>(For more than one, separate names with spaces)</comment>
362ALSA_CARDS="emu10k1 via82xx" 362ALSA_CARDS="emu10k1 via82xx"
363</pre> 363</pre>
364 364
365<p> 365<p>
366If you have compiled your kernel and want to use <c>alsa-driver</c>, please 366If you have compiled your kernel and want to use <c>alsa-driver</c>, please
367ensure the following before proceeding, else <c>alsa-driver</c> is likely to 367ensure the following before proceeding, else <c>alsa-driver</c> is likely to
368fail. The next code listing gives you one way of performing the checks. 368fail. The next code listing gives you one way of performing the checks.
369</p> 369</p>
370 370
371<note> 371<note>
372<c>genkernel</c> users can proceed with <uri link="#doc_chap2_pre6">Installing 372<c>genkernel</c> users can proceed with <uri link="#doc_chap2_pre6">Installing
373alsa-driver</uri> as their configuration is in sync with the one shown below by 373alsa-driver</uri> as their configuration is in sync with the one shown below by
374default. 374default.
375</note> 375</note>
376 376
377<ol> 377<ol>
378 <li> 378 <li>
379 <c>CONFIG_SOUND</c> is set. (Basic Sound support enabled) 379 <c>CONFIG_SOUND</c> is set. (Basic Sound support enabled)
380 </li> 380 </li>
381 <li> 381 <li>
382 <c>CONFIG_SOUND_PRIME</c> is not set. (In-built OSS support disabled) 382 <c>CONFIG_SOUND_PRIME</c> is not set. (In-built OSS support disabled)
419(re)compile, you just run <c>module-rebuild rebuild</c>, and your external 419(re)compile, you just run <c>module-rebuild rebuild</c>, and your external
420modules will be rebuilt. 420modules will be rebuilt.
421</impo> 421</impo>
422 422
423</body> 423</body>
424</section> 424</section>
425</chapter> 425</chapter>
426 426
427<chapter> 427<chapter>
428<title>Configuring/Testing ALSA</title> 428<title>Configuring/Testing ALSA</title>
429<section id="alsa-utilities"> 429<section id="alsa-utilities">
430<title>ALSA Utilities</title> 430<title>ALSA Utilities</title>
431<body> 431<body>
432 432
433<p> 433<p>
434<c>alsa-utils</c> forms an integral part of ALSA as it has a truckload of 434<c>alsa-utils</c> forms an integral part of ALSA as it has a truckload of
435programs that are highly useful, including the ALSA Initscripts. Hence we 435programs that are highly useful, including the ALSA Initscripts. Hence we
436strongly recommend that you install <c>alsa-utils</c> 436strongly recommend that you install <c>alsa-utils</c>
437</p> 437</p>
438 438
439<pre caption="Install alsa-utils"> 439<pre caption="Install alsa-utils">
440# <i>emerge alsa-utils</i> 440# <i>emerge alsa-utils</i>
441</pre> 441</pre>
442 442
443<note> 443<note>
444If you activated ALSA in your <uri link="#kernel">kernel</uri> <e>and</e> did 444If you activated ALSA in your <uri link="#kernel">kernel</uri> <e>and</e> did
445not compile ALSA as modules, please proceed to the 445not compile ALSA as modules, please proceed to the
446<uri link="#initscript">ALSA Initscript</uri> section. The rest of you need 446<uri link="#initscript">ALSA Initscript</uri> section. The rest of you need
447to configure ALSA. This is made very easy by the existence of the 447to configure ALSA. This is made very easy by the existence of the
448<c>alsaconf</c> tool provided by <c>alsa-utils</c>. 448<c>alsaconf</c> tool provided by <c>alsa-utils</c>.
449</note> 449</note>
450 450
451</body> 451</body>
452</section> 452</section>
453<section id="alsa-config"> 453<section id="alsa-config">
454<title>Configuration</title> 454<title>Configuration</title>
455<body> 455<body>
456 456
457<p> 457<p>
458Recent versions of <c>udev</c> (<c>>=udev-103</c>) provide some degree of 458Recent versions of <c>udev</c> (<c>>=udev-103</c>) provide some degree of
459kernel-level autoconfiguration of your sound card. If possible, try to rely on 459kernel-level autoconfiguration of your sound card. If possible, try to rely on
460just letting your kernel automatically setup your sound card for you. Otherwise, 460just letting your kernel automatically setup your sound card for you. Otherwise,
461use <c>alsaconf</c> to configure your card, as shown below. 461use <c>alsaconf</c> to configure your card, as shown below.
462</p> 462</p>
463 463
464<note> 464<note>
465Please shut down any programs that <e>might</e> access the sound card while 465Please shut down any programs that <e>might</e> access the sound card while
466running <c>alsaconf</c>. 466running <c>alsaconf</c>.
467</note> 467</note>
468 468
469<p> 469<p>
470Another way to configure your sound card is to run <c>alsaconf</c>. Just type 470To configure your sound card just type <c>alsaconf</c> in a shell as root.
471<c>alsaconf</c> in a shell as root.
472</p> 471</p>
473 472
474<pre caption="Invoking alsaconf"> 473<pre caption="Invoking alsaconf">
475# <i>alsaconf</i> 474# <i>alsaconf</i>
476</pre> 475</pre>
477 476
478<p> 477<p>
479You will now see a neat menu guided interface that will automatically probe 478You will now see a neat menu guided interface that will automatically probe
480your devices and try to find out your sound card. You will be asked to pick 479your devices and try to find out your sound card. You will be asked to pick
481your sound card from a list. Once that's done, it will ask you permission to 480your sound card from a list. Once that's done, it will ask you permission to
482automatically make required changes to <path>/etc/modules.d/alsa</path>. 481automatically make required changes to <path>/etc/modules.d/alsa</path>.
483It will then adjust your volume settings to optimum levels, run 482It will then adjust your volume settings to optimum levels, run
484<c>update-modules</c> and start the <path>/etc/init.d/alsasound</path> service. 483<c>update-modules</c> and start the <path>/etc/init.d/alsasound</path> service.
485Once <c>alsaconf</c> exits, you can proceed with setting up the ALSA 484Once <c>alsaconf</c> exits, you can proceed with setting up the ALSA
486initscript. 485initscript.
487</p> 486</p>
488 487
489</body> 488</body>
490</section> 489</section>
491<section id="initscript"> 490<section id="initscript">
492<title>ALSA Initscript</title> 491<title>ALSA Initscript</title>
493<body> 492<body>
494 493
495<p> 494<p>
496We're now almost all setup. Whichever method you chose to install ALSA, you'll 495We're now almost all setup. Whichever method you chose to install ALSA, you'll
497need to have something load your modules or initialize ALSA and restore your 496need to have something load your modules or initialize ALSA and restore your
498volume settings when your system comes up. The ALSA Initscript handles all of 497volume settings when your system comes up. The ALSA Initscript handles all of
499this for you and is called <c>alsasound</c>. Add it to the boot runlevel. 498this for you and is called <c>alsasound</c>. Add it to the boot runlevel.
500</p> 499</p>
501 500
502<pre caption="Adding ALSA to the boot runlevel"> 501<pre caption="Adding ALSA to the boot runlevel">
503# <i>rc-update add alsasound boot</i> 502# <i>rc-update add alsasound boot</i>
504 * alsasound added to runlevel boot 503 * alsasound added to runlevel boot
505 * rc-update complete. 504 * rc-update complete.
506</pre> 505</pre>
507 506
508<p> 507<p>
509Next, just check the <path>/etc/conf.d/alsasound</path> file and ensure that 508Next, just check the <path>/etc/conf.d/alsasound</path> file and ensure that
510SAVE_ON_STOP variable is set to yes. This saves your sound settings when you 509SAVE_ON_STOP variable is set to yes. This saves your sound settings when you
511shutdown your system. 510shutdown your system.
512</p> 511</p>
513 512
514</body> 513</body>
515</section> 514</section>
516<section> 515<section>
517<title>Audio Group</title> 516<title>Audio Group</title>
518<body> 517<body>
519 518
520<p> 519<p>
521Before we move on to testing, there's one last <e>important</e> thing that needs 520Before we move on to testing, there's one last <e>important</e> thing that needs
522to be setup. Rule of thumb in a *nix OS: Do not run as root unless needed. 521to be setup. Rule of thumb in a *nix OS: Do not run as root unless needed.
523This applies here as well ;) How? Well, most of the times you should be logged 522This applies here as well ;) How? Well, most of the times you should be logged
524in as a user and would like to listen to music or access your soundcard. For 523in as a user and would like to listen to music or access your soundcard. For
525that to happen, you need to be in the "audio" group. At this point, we'll add 524that to happen, you need to be in the "audio" group. At this point, we'll add
529</p> 528</p>
530 529
531<pre caption="Adding users to the audio group"> 530<pre caption="Adding users to the audio group">
532<comment>(Substitute &lt;username&gt; with your user)</comment> 531<comment>(Substitute &lt;username&gt; with your user)</comment>
533# <i>gpasswd -a &lt;username&gt; audio </i> 532# <i>gpasswd -a &lt;username&gt; audio </i>
534Adding user &lt;username&gt; to group audio 533Adding user &lt;username&gt; to group audio
535</pre> 534</pre>
536 535
537</body> 536</body>
538</section> 537</section>
539<section> 538<section>
540<title>Volume Check!</title> 539<title>Volume Check!</title>
541<body> 540<body>
542 541
543<p> 542<p>
544We've completed all the setups and prerequisites, so let's fire up ALSA. If 543We've completed all the setups and prerequisites, so let's fire up ALSA. If
545you ran <c>alsaconf</c>, you can skip this step, since <c>alsaconf</c> already 544you ran <c>alsaconf</c>, you can skip this step, since <c>alsaconf</c> already
546does this for you. 545does this for you.
547</p> 546</p>
548 547
549<pre caption="Start the service"> 548<pre caption="Start the service">
550# <i>/etc/init.d/alsasound start</i> 549# <i>/etc/init.d/alsasound start</i>
551</pre> 550</pre>
552 551
553<p> 552<p>
554Now that the required things have been taken care of, we need to check up on 553Now that the required things have been taken care of, we need to check up on
555the volume as in certain cases, it is muted. We use <c>alsamixer</c> for this 554the volume as in certain cases, it is muted. We use <c>alsamixer</c> for this
556purpose. 555purpose.
557</p> 556</p>
558 557
559<pre caption="Starting alsamixer"> 558<pre caption="Starting alsamixer">
560<comment>(Opens up a console program. Only required settings are shown)</comment> 559<comment>(Opens up a console program. Only required settings are shown)</comment>
561# <i>alsamixer</i> 560# <i>alsamixer</i>
562</pre> 561</pre>
563 562
564<impo> 563<impo>
565If you have issues starting up <c>alsamixer</c> and get errors such as 564If you have issues starting up <c>alsamixer</c> and get errors such as
566alsamixer: function snd_ctl_open failed for default: No such file or directory, 565alsamixer: function snd_ctl_open failed for default: No such file or directory,
567this is usually an issue with udev setting up the devices. Run <c>killall 566this is usually an issue with udev setting up the devices. Run <c>killall
568udevd; udevstart</c> to reload <path>/dev</path> entries and fire up 567udevd; udevstart</c> to reload <path>/dev</path> entries and fire up
569<c>alsamixer</c>. It should solve the issue. 568<c>alsamixer</c>. It should solve the issue.
570</impo> 569</impo>
571 570
572<p> 571<p>
573This is how the ALSA Mixer <e>might</e> look the first time you open it. Pay 572This is how the ALSA Mixer <e>might</e> look the first time you open it. Pay
574attention to the Master and PCM channels which both have an MM below them. 573attention to the Master and PCM channels which both have an MM below them.
575That means they are muted. If you try to play anything with <c>alsamixer</c> 574That means they are muted. If you try to play anything with <c>alsamixer</c>
576in this state, you will not hear anything on your speakers. 575in this state, you will not hear anything on your speakers.
577</p> 576</p>
578 577
579<figure link="/images/docs/alsa-mixermuted.png" short="AlsaMixer Muted" caption="The Alsa Mixer Main Window, Muted"/> 578<figure link="/images/docs/alsa-mixermuted.png" short="AlsaMixer Muted" caption="The Alsa Mixer Main Window, Muted"/>
580 579
581<p> 580<p>
582Now, we shall unmute the channels, and set volume levels as needed. 581Now, we shall unmute the channels, and set volume levels as needed.
583</p> 582</p>
584 583
585<warn> 584<warn>
586Both Master <e>and</e> PCM need to be unmuted and set to audible volume levels 585Both Master <e>and</e> PCM need to be unmuted and set to audible volume levels
587if you want to hear some output on your speakers. 586if you want to hear some output on your speakers.
588</warn> 587</warn>
589 588
590<ul> 589<ul>
591 <li> 590 <li>
592 To move between channels, use your left and right arrow keys. (&lt;- 591 To move between channels, use your left and right arrow keys. (&lt;-
593 &amp; -&gt;) 592 &amp; -&gt;)
594 </li> 593 </li>
595 <li> 594 <li>
596 To toggle mute, move to the specific channel, for example Master and press 595 To toggle mute, move to the specific channel, for example Master and press
597 the <e>m</e> key on the keyboard. 596 the <e>m</e> key on the keyboard.
598 </li> 597 </li>
599 <li> 598 <li>
600 To increase and decrease the volume levels, use the up and down arrow keys 599 To increase and decrease the volume levels, use the up and down arrow keys
601 respectively. 600 respectively.
602 </li> 601 </li>
603</ul> 602</ul>
604 603
605<note> 604<note>
606Be careful when setting your Bass and Treble values. 50 is usually a good 605Be careful when setting your Bass and Treble values. 50 is usually a good
607number for both. Extremely high values of Bass may cause <e>jarring</e> 606number for both. Extremely high values of Bass may cause <e>jarring</e>
608on speakers that are not designed to handle them. 607on speakers that are not designed to handle them.
609</note> 608</note>
610 609
611<p> 610<p>
612After you're all done, your ALSA Mixer should look similar to the one below. 611After you're all done, your ALSA Mixer should look similar to the one below.
613Note the 00 instead of the MM and also the volume levels for some optimum 612Note the 00 instead of the MM and also the volume levels for some optimum
614settings. 613settings.
615</p> 614</p>
616 615
617<figure link="/images/docs/alsa-mixerunmuted.png" short="AlsaMixer Unmuted" caption="Alsa Mixer ready to roll"/> 616<figure link="/images/docs/alsa-mixerunmuted.png" short="AlsaMixer Unmuted" caption="Alsa Mixer ready to roll"/>
618 617
619</body> 618</body>
620</section> 619</section>
621<section> 620<section>
622<title>Sound Check!</title> 621<title>Sound Check!</title>
623<body> 622<body>
624 623
625<p> 624<p>
626Finally. Some music. If everything above is perfect, you should now be able to 625Finally. Some music. If everything above is perfect, you should now be able to
627listen to some good music. A quick way to test is to use a command line tool 626listen to some good music. A quick way to test is to use a command line tool
628like <c>media-sound/madplay</c>. You could also use something more well known 627like <c>media-sound/madplay</c>. You could also use something more well known
674<body> 673<body>
675 674
676<p> 675<p>
677You can now add the <c>alsa</c> use flag to <path>/etc/make.conf</path> to 676You can now add the <c>alsa</c> use flag to <path>/etc/make.conf</path> to
678ensure that your applications that support ALSA get built with it. Some 677ensure that your applications that support ALSA get built with it. Some
679architectures like x86 and amd64 have the flag enabled by default. 678architectures like x86 and amd64 have the flag enabled by default.
680</p> 679</p>
681 680
682</body> 681</body>
683</section> 682</section>
684<section> 683<section>
685<title>Issues?</title> 684<title>Issues?</title>
686<body> 685<body>
687 686
688<p> 687<p>
689If for some reason you're unable to hear sound, the first thing to do would 688If for some reason you're unable to hear sound, the first thing to do would
690be to check your <uri link="#doc_chap3_pre6">alsamixer</uri> settings. 80% of 689be to check your <uri link="#doc_chap3_pre6">alsamixer</uri> settings. 80% of
691the issues lie with muted channels or low volume. Also check your Window 690the issues lie with muted channels or low volume. Also check your Window
692Manager's sound applet and verify that volumes are set to audible levels. 691Manager's sound applet and verify that volumes are set to audible levels.
693</p> 692</p>
694 693
695<p> 694<p>
696<path>/proc</path> is your friend. And in this case, <path>/proc/asound</path> 695<path>/proc</path> is your friend. And in this case, <path>/proc/asound</path>
697is your best friend. We shall just take a short look at how much info is made 696is your best friend. We shall just take a short look at how much info is made
698available to us there. 697available to us there.
699</p> 698</p>
700 699
701<pre caption="Fun with /proc/asound"> 700<pre caption="Fun with /proc/asound">
702<comment>(First and foremost, if /proc/asound/cards shows your card, ALSA has 701<comment>(First and foremost, if /proc/asound/cards shows your card, ALSA has
703picked up your sound card fine.)</comment> 702picked up your sound card fine.)</comment>
704# <i>cat /proc/asound/cards</i> 703# <i>cat /proc/asound/cards</i>
7050 [Live ]: EMU10K1 - Sound Blaster Live! 7040 [Live ]: EMU10K1 - Sound Blaster Live!
706 Sound Blaster Live! (rev.6, serial:0x80271102) at 0xb800, irq 11 705 Sound Blaster Live! (rev.6, serial:0x80271102) at 0xb800, irq 11
707 706
708<comment>(This displays the current running ALSA version)</comment> 707<comment>(This displays the current running ALSA version)</comment>
709# <i>cat /proc/asound/version</i> 708# <i>cat /proc/asound/version</i>
710Advanced Linux Sound Architecture Driver Version 1.0.8 (Thu Jan 13 09:39:32 2005 UTC). 709Advanced Linux Sound Architecture Driver Version 1.0.8 (Thu Jan 13 09:39:32 2005 UTC).
711 710
712<comment>(ALSA OSS emulation details)</comment> 711<comment>(ALSA OSS emulation details)</comment>
713# <i>cat /proc/asound/oss/sndstat</i> 712# <i>cat /proc/asound/oss/sndstat</i>
714Sound Driver:3.8.1a-980706 (ALSA v1.0.8 emulation code) 713Sound Driver:3.8.1a-980706 (ALSA v1.0.8 emulation code)
715Kernel: Linux airwolf.zion 2.6.11ac1 #2 Wed May 4 00:35:08 IST 2005 i686 714Kernel: Linux airwolf.zion 2.6.11ac1 #2 Wed May 4 00:35:08 IST 2005 i686
716Config options: 0 715Config options: 0
717 716
832 831
833<chapter> 832<chapter>
834<title>Other things ALSA</title> 833<title>Other things ALSA</title>
835<section id="midi"> 834<section id="midi">
836<title>Setting up MIDI support</title> 835<title>Setting up MIDI support</title>
837<body> 836<body>
838 837
839<p> 838<p>
840First, check to make sure that you enabled the <c>midi</c> USE flag in 839First, check to make sure that you enabled the <c>midi</c> USE flag in
841<path>/etc/make.conf</path>. If you didn't, go ahead and add it now. You will 840<path>/etc/make.conf</path>. If you didn't, go ahead and add it now. You will
842also need to re-emerge any ALSA packages that use the <c>midi</c> flag, such as 841also need to re-emerge any ALSA packages that use the <c>midi</c> flag, such as
843<c>alsa-lib</c>, <c>alsa-utils</c>, and <c>alsa-driver</c>. 842<c>alsa-lib</c>, <c>alsa-utils</c>, and <c>alsa-driver</c>.
844</p> 843</p>
845 844
846<p> 845<p>
847If your sound card is one of those that come with on-board MIDI synthesizers 846If your sound card is one of those that come with on-board MIDI synthesizers
848and you would like to listen to some .mid files, you have to install 847and you would like to listen to some .mid files, you have to install
849<c>awesfx</c> which is basically a set of utilities for controlling the AWE32 848<c>awesfx</c> which is basically a set of utilities for controlling the AWE32
850driver. We need to install it first. If you don't have a hardware synthesizer, 849driver. We need to install it first. If you don't have a hardware synthesizer,
851you can use a virtual one. Please see the section on 850you can use a virtual one. Please see the section on
852<uri link="#vsynth">Virtual Synthesizers</uri> for more information. 851<uri link="#vsynth">Virtual Synthesizers</uri> for more information.
853</p> 852</p>
854 853
855<pre caption="Installing awesfx"> 854<pre caption="Installing awesfx">
856# <i>emerge awesfx</i> 855# <i>emerge awesfx</i>
857</pre> 856</pre>
858 857
859<note> 858<note>
860You will need to copy over SoundFont (SF2) files from your sound card's driver 859You will need to copy over SoundFont (SF2) files from your sound card's driver
861CD or a Windows installation into <path>/usr/share/sounds/sf2/</path>. For 860CD or a Windows installation into <path>/usr/share/sounds/sf2/</path>. For
862example a sound font file for the Creative SBLive! card would be 8MBGMSFX.SF2. 861example a sound font file for the Creative SBLive! card would be 8MBGMSFX.SF2.
863</note> 862</note>
864 863
865<p> 864<p>
866After copying over the Soundfont files, we can then play a midi file as shown. 865After copying over the Soundfont files, we can then play a midi file as shown.
867You can also add the <c>asfxload</c> command to 866You can also add the <c>asfxload</c> command to
868<path>/etc/conf.d/local.start</path>, so that the sound font is loaded 867<path>/etc/conf.d/local.start</path>, so that the sound font is loaded
869every time the system starts up. 868every time the system starts up.
870</p> 869</p>
871 870
872<note> 871<note>
873<path>/mnt</path> paths mentioned in the code listing(s) below will <e>not</e> 872<path>/mnt</path> paths mentioned in the code listing(s) below will <e>not</e>
874be the same in your machine. They are just an example. Please be careful to 873be the same in your machine. They are just an example. Please be careful to
875change the path to suit your machine. 874change the path to suit your machine.
876</note> 875</note>
877 876
878<pre caption="Loading Soundfonts"> 877<pre caption="Loading Soundfonts">
879<comment>(First, copy the Soundfont)</comment> 878<comment>(First, copy the Soundfont)</comment>
880# <i>cp /mnt/win2k/Program\ Files/CreativeSBLive2k/SFBank/8MBGMSFX.SF2 /usr/share/sounds/sf2/</i> 879# <i>cp /mnt/win2k/Program\ Files/CreativeSBLive2k/SFBank/8MBGMSFX.SF2 /usr/share/sounds/sf2/</i>
881<comment>(Or get it from your SoundBlaster CD)</comment> 880<comment>(Or get it from your SoundBlaster CD)</comment>
882# <i>cp /mnt/cdrom/AUDIO/ENGLISH/SFBANK/8MBGMSFX.SF2 /usr/share/sounds/sf2/</i> 881# <i>cp /mnt/cdrom/AUDIO/ENGLISH/SFBANK/8MBGMSFX.SF2 /usr/share/sounds/sf2/</i>
883<comment>(We load the specific Soundfont)</comment> 882<comment>(We load the specific Soundfont)</comment>
884# <i>asfxload /usr/share/sounds/sf2/8MBGMSFX.SF2</i> 883# <i>asfxload /usr/share/sounds/sf2/8MBGMSFX.SF2</i>
885</pre> 884</pre>
886 885
887<p> 886<p>
888You can now play midi files using a program like <c>aplaymidi</c>. Run 887You can now play midi files using a program like <c>aplaymidi</c>. Run
889<c>aplaymidi -l</c> to get a list of available ports and then pick one 888<c>aplaymidi -l</c> to get a list of available ports and then pick one
890to play the file on. 889to play the file on.
891</p> 890</p>
892 891
893<pre caption="Playing MIDI"> 892<pre caption="Playing MIDI">
894<comment>(Check open ports)</comment> 893<comment>(Check open ports)</comment>
895# <i>aplaymidi -l</i> 894# <i>aplaymidi -l</i>
896 Port Client name Port name 895 Port Client name Port name
897 64:0 EMU10K1 MPU-401 (UART) EMU10K1 MPU-401 (UART) 896 64:0 EMU10K1 MPU-401 (UART) EMU10K1 MPU-401 (UART)
898 65:0 Emu10k1 WaveTable Emu10k1 Port 0 897 65:0 Emu10k1 WaveTable Emu10k1 Port 0
899 65:1 Emu10k1 WaveTable Emu10k1 Port 1 898 65:1 Emu10k1 WaveTable Emu10k1 Port 1
900 65:2 Emu10k1 WaveTable Emu10k1 Port 2 899 65:2 Emu10k1 WaveTable Emu10k1 Port 2
901 65:3 Emu10k1 WaveTable Emu10k1 Port 3 900 65:3 Emu10k1 WaveTable Emu10k1 Port 3
902<comment>(Pick a port, and play a mid file)</comment> 901<comment>(Pick a port, and play a mid file)</comment>
903# <i> aplaymidi --port=65:0 /mnt/shyam/music/midi/mi2.mid</i> 902# <i> aplaymidi --port=65:0 /mnt/shyam/music/midi/mi2.mid</i>
904</pre> 903</pre>
911 910
912<p> 911<p>
913If your sound card lacks a hardware synthesizer, you could use a virtual one 912If your sound card lacks a hardware synthesizer, you could use a virtual one
914like <c>timidity++</c>. Installation is a breeze. 913like <c>timidity++</c>. Installation is a breeze.
915</p> 914</p>
916 915
917<pre caption="Installing timidity++"> 916<pre caption="Installing timidity++">
918# <i>emerge timidity++</i> 917# <i>emerge timidity++</i>
919</pre> 918</pre>
920 919
921<p> 920<p>
922For timidity to play sounds, it needs a sound font. Fortunately, the ebuild will 921For timidity to play sounds, it needs a sound font. Fortunately, the ebuild will
923install some sound font packages for you. There are a few other font packages 922install some sound font packages for you. There are a few other font packages
924available in Portage, such as <c>timidity-freepats</c> and 923available in Portage, such as <c>timidity-freepats</c> and
925<c>timidity-eawpatches</c>. You can have multiple sound font configurations 924<c>timidity-eawpatches</c>. You can have multiple sound font configurations
926installed, and you can place your own in <path>/usr/share/timidity/</path>. To 925installed, and you can place your own in <path>/usr/share/timidity/</path>. To
927switch between different timidity configurations, you should use 926switch between different timidity configurations, you should use
928<c>eselect</c>. 927<c>eselect</c>.
929</p> 928</p>
930 929
931<pre caption="Changing configurations"> 930<pre caption="Changing configurations">
932# <i>eselect timidity list</i> 931# <i>eselect timidity list</i>
933# <i>eselect timidity set eawpatches</i> 932# <i>eselect timidity set eawpatches</i>
934</pre> 933</pre>
935 934
936<p> 935<p>
937Don't forget to add <c>timidity</c> to the default runlevel. 936Don't forget to add <c>timidity</c> to the default runlevel.
938</p> 937</p>
939 938
940<pre caption="Adding timidity to the default runlevel"> 939<pre caption="Adding timidity to the default runlevel">
941# <i>rc-update add timidity default</i> 940# <i>rc-update add timidity default</i>
959</p> 958</p>
960 959
961<pre caption="Installing ALSA Tools"> 960<pre caption="Installing ALSA Tools">
962# <i>emerge alsa-tools</i> 961# <i>emerge alsa-tools</i>
963</pre> 962</pre>
964 963
965</body> 964</body>
966</section> 965</section>
967<section> 966<section>
968<title>Multiple sound cards</title> 967<title>Multiple sound cards</title>
969<body> 968<body>
970 969
971<p> 970<p>
972You can have more than one sound card in your system simultaneously, provided 971You can have more than one sound card in your system simultaneously, provided
973that you have built ALSA as modules in your kernel (or have installed 972that you have built ALSA as modules in your kernel (or have installed
974<c>alsa-driver</c> instead). You just need to specify which should be started 973<c>alsa-driver</c> instead). You just need to specify which should be started
975first in <path>/etc/modules.d/alsa</path>. Your cards are identified by their 974first in <path>/etc/modules.d/alsa</path>. Your cards are identified by their
976driver names inside this file. 0 is the first card, 1 is the second, and so on. 975driver names inside this file. 0 is the first card, 1 is the second, and so on.
977Here's an example for a system with two sound cards. 976Here's an example for a system with two sound cards.
978</p> 977</p>
979 978
980<pre caption="Two sound cards in /etc/modules.d/alsa"> 979<pre caption="Two sound cards in /etc/modules.d/alsa">
981options snd-emu10k1 index=0 980options snd-emu10k1 index=0
982options snd-via82xx index=1 981options snd-via82xx index=1
983</pre> 982</pre>
984 983
985<p> 984<p>
986Or, if you have two cards that use the same driver, you specify them on the same 985Or, if you have two cards that use the same driver, you specify them on the same
987line, using comma-separated numbers. Here's an example for a system with three 986line, using comma-separated numbers. Here's an example for a system with three
988sound cards, two of which are the same Intel High Definition Audio card. 987sound cards, two of which are the same Intel High Definition Audio card.
989</p> 988</p>
1008installed by adding their USE flags to <path>/etc/portage/package.use</path>. 1007installed by adding their USE flags to <path>/etc/portage/package.use</path>.
1009</p> 1008</p>
1010 1009
1011<pre caption="Installing alsa-plugins"> 1010<pre caption="Installing alsa-plugins">
1012# <i>emerge -avt alsa-plugins</i> 1011# <i>emerge -avt alsa-plugins</i>
1013</pre> 1012</pre>
1014 1013
1015</body> 1014</body>
1016</section> 1015</section>
1017<section> 1016<section>
1018<title>A big thank you to...</title> 1017<title>A big thank you to...</title>
1019<body> 1018<body>
1020 1019
1021<p> 1020<p>
1022Everyone who contributed to the earlier version of the Gentoo ALSA Guide: 1021Everyone who contributed to the earlier version of the Gentoo ALSA Guide:
1023Vincent Verleye, Grant Goodyear, Arcady Genkin, Jeremy Huddleston, 1022Vincent Verleye, Grant Goodyear, Arcady Genkin, Jeremy Huddleston,
1024John P. Davis, Sven Vermeulen, Benny Chuang, Tiemo Kieft and Erwin. 1023John P. Davis, Sven Vermeulen, Benny Chuang, Tiemo Kieft and Erwin.
1025</p> 1024</p>
1026 1025
1027</body> 1026</body>
1028</section> 1027</section>
1029<section> 1028<section>
1030<title>References</title> 1029<title>References</title>
1031<body> 1030<body>
1032 1031
1033<ul> 1032<ul>
1034 <li><uri link="http://www.alsa-project.org/">The ALSA Project</uri></li> 1033 <li><uri link="http://www.alsa-project.org/">The ALSA Project</uri></li>
1035 <li><uri link="http://linux-sound.org">Linux Sound/MIDI Software</uri></li> 1034 <li><uri link="http://linux-sound.org">Linux Sound/MIDI Software</uri></li>
1036</ul> 1035</ul>
1037 1036
1038</body> 1037</body>

Legend:
Removed from v.1.79  
changed lines
  Added in v.1.80

  ViewVC Help
Powered by ViewVC 1.1.20