source: multimedia/libdriv/pulseaudio.xml@ 11eb3ae5

10.0 10.1 11.0 ken/refactor-virt lazarus qt5new trunk upgradedb xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since 11eb3ae5 was 11eb3ae5, checked in by Douglas R. Reno <renodr@…>, 17 months ago

Update to llvm-10.0.1
Update to libseccomp-2.5.0
Update to pipewire-0.3.7
Minor text tweaks

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

  • Property mode set to 100644
File size: 17.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY pulseaudio-download-http
8 "https://www.freedesktop.org/software/pulseaudio/releases/pulseaudio-&pulseaudio-version;.tar.xz">
9 <!ENTITY pulseaudio-download-ftp " ">
10 <!ENTITY pulseaudio-md5sum "e41d606f90254ed45c90520faf83d95c">
11 <!ENTITY pulseaudio-size "1.8 MB">
12 <!ENTITY pulseaudio-buildsize "93 MB (add 2 MB for tests)">
13 <!ENTITY pulseaudio-time "0.5 SBU (Using parallelism=4; add 0.6 SBU for tests)">
14]>
15
16<sect1 id="pulseaudio" xreflabel="PulseAudio-&pulseaudio-version;">
17 <?dbhtml filename="pulseaudio.html"?>
18
19 <sect1info>
20 <othername>$LastChangedBy$</othername>
21 <date>$Date$</date>
22 </sect1info>
23
24 <title>PulseAudio-&pulseaudio-version;</title>
25
26 <indexterm zone="pulseaudio">
27 <primary sortas="a-PulseAudio">PulseAudio</primary>
28 </indexterm>
29
30 <sect2 role="package">
31 <title>Introduction to PulseAudio</title>
32
33 <para>
34 <application>PulseAudio</application> is a sound system for POSIX OSes,
35 meaning that it is a proxy for sound applications. It allows you to do
36 advanced operations on your sound data as it passes between your
37 application and your hardware. Things like transferring the audio to a
38 different machine, changing the sample format or channel count and mixing
39 several sounds into one are easily achieved using a sound server.
40 </para>
41
42 &lfs91_checked;
43
44 <bridgehead renderas="sect3">Package Information</bridgehead>
45 <itemizedlist spacing="compact">
46 <listitem>
47 <para>
48 Download (HTTP): <ulink url="&pulseaudio-download-http;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download (FTP): <ulink url="&pulseaudio-download-ftp;"/>
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download MD5 sum: &pulseaudio-md5sum;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Download size: &pulseaudio-size;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated disk space required: &pulseaudio-buildsize;
69 </para>
70 </listitem>
71 <listitem>
72 <para>
73 Estimated build time: &pulseaudio-time;
74 </para>
75 </listitem>
76 </itemizedlist>
77
78 <bridgehead renderas="sect3">PulseAudio Dependencies</bridgehead>
79
80 <bridgehead renderas="sect4">Required</bridgehead>
81 <para role="required">
82 <xref linkend="libsndfile"/>
83 </para>
84
85 <bridgehead renderas="sect4">Recommended</bridgehead>
86 <para role="recommended">
87 <xref linkend="alsa-lib"/>,
88 <xref linkend="dbus"/>,
89 <phrase revision="sysv"><xref linkend="elogind"/>,</phrase>
90 <xref linkend="glib2"/>,
91 <xref linkend="libcap-pam"/>,
92 <xref linkend="speex"/> and
93 <xref linkend="xorg7-lib"/>
94 </para>
95
96 <bridgehead renderas="sect4">Optional</bridgehead>
97 <para role="optional">
98 <xref linkend="avahi"/>,
99 <xref linkend="bluez"/>,
100 <xref linkend="fftw"/>,
101 <xref linkend="GConf"/>,
102 <xref linkend="gtk3"/>,
103 <xref linkend="libsamplerate"/>,
104 <xref linkend="sbc"/> (Bluetooth support),
105 <xref linkend="valgrind"/>,
106 <ulink url="http://www.jackaudio.org/">JACK</ulink>,
107 <ulink url="http://0pointer.de/lennart/projects/libasyncns/">libasyncns</ulink>,
108 <ulink url="http://www.lirc.org/">LIRC</ulink>,
109 <ulink url="http://gstreamer.freedesktop.org/src/orc/">ORC</ulink>,
110 <ulink url="https://sourceforge.net/projects/soxr/">soxr</ulink>,
111 <ulink url="http://tdb.samba.org/">TDB</ulink>,
112 <ulink url="http://freedesktop.org/software/pulseaudio/webrtc-audio-processing/">
113 WebRTC AudioProcessing</ulink> and
114 <ulink url="http://www.xenproject.org/">XEN</ulink>
115 </para>
116
117 <para condition="html" role="usernotes">User Notes:
118 <ulink url="&blfs-wiki;/pulseaudio"/>
119 </para>
120 </sect2>
121
122 <sect2 role="installation">
123 <title>Installation of PulseAudio</title>
124
125 <para>
126 Install <application>PulseAudio</application> by running the following
127 commands:
128 </para>
129
130<screen revision="sysv"><userinput>./configure --prefix=/usr \
131 --sysconfdir=/etc \
132 --localstatedir=/var \
133 --disable-bluez5 \
134 --disable-rpath \
135 --with-systemduserunitdir=no &amp;&amp;
136make</userinput></screen>
137
138<screen revision="systemd"><userinput>./configure --prefix=/usr \
139 --sysconfdir=/etc \
140 --localstatedir=/var \
141 --disable-bluez5 \
142 --disable-rpath &amp;&amp;
143make</userinput></screen>
144
145 <para>
146 To test the results, issue: <command>make check</command>.
147 </para>
148
149 <para>
150 Now, as the <systemitem class="username">root</systemitem> user:
151 </para>
152
153<screen role="root"><userinput>make install</userinput></screen>
154
155 <!-- http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/ -->
156 <para>
157 While still as the <systemitem class="username">root</systemitem>
158 user, remove the <application>D-Bus</application> configuration file
159 for the system wide daemon to avoid creating unnecessary system
160 users and groups:
161 </para>
162
163<screen role="root"><userinput>rm -fv /etc/dbus-1/system.d/pulseaudio-system.conf</userinput></screen>
164
165 </sect2>
166
167 <sect2 role="commands">
168 <title>Command Explanations</title>
169
170 <para>
171 <parameter>--disable-bluez5</parameter>: This switch prevents
172 a runtime error if <xref linkend="dbus"/> and <xref linkend="sbc"/>
173 are both installed but <xref linkend="bluez"/> is not installed.
174 Remove this if you have installed all three packages.
175 </para>
176
177 <para>
178 <parameter>--disable-rpath</parameter>: This switch prevents
179 linker from adding a hardcoded runtime path to the installed
180 programs and libraries.
181 </para>
182
183 </sect2>
184
185 <sect2 role="configuration">
186 <title>Configuring PulseAudio</title>
187
188 <sect3 id="pulseaudio-config">
189 <title>Config Files</title>
190 <para>
191 There are system wide configuration files:
192 <filename>/etc/pulse/daemon.conf</filename>,
193 <filename>/etc/pulse/client.conf</filename>,
194 <filename>/etc/pulse/default.pa</filename>, and user configuration
195 files with the same names in
196 <filename class="directory">~/.config/pulse</filename>. User
197 configuration files take precedence over system wide ones.
198 </para>
199
200 <indexterm zone="pulseaudio pulseaudio-config">
201 <primary sortas="e-AA.config-pulse">~/.config/pulse</primary>
202 </indexterm>
203
204 <indexterm zone="pulseaudio pulseaudio-config">
205 <primary
206 sortas="e-etc-pulse-daemon.conf">/etc/pulse/daemon.conf</primary>
207 </indexterm>
208
209 <indexterm zone="pulseaudio pulseaudio-config">
210 <primary
211 sortas="e-etc-pulse-client.conf">/etc/pulse/client.conf</primary>
212 </indexterm>
213
214 <indexterm zone="pulseaudio pulseaudio-config">
215 <primary
216 sortas="e-etc-pulse-default.pa">/etc/pulse/default.pa</primary>
217 </indexterm>
218 </sect3>
219
220 <sect3><title>Configuration Information</title>
221<!--
222 <para>
223 The default configuration files allow setting up a working installation.
224 However, a reference to Console-Kit needs to be removed.
225 Issue the following command as the
226 <systemitem class="username">root</systemitem> user:
227 </para>
228
229<screen role="root"><userinput>sed -i '/load-module module-console-kit/s/^/#/' /etc/pulse/default.pa</userinput></screen>
230
231 In 13.0 this is protected via .ifexists module-console-kit.so
232-->
233 <para>
234 You may have to configure the audio system. You can start
235 <application>pulseaudio</application> in command line mode using
236 <command>pulseaudio -C</command> and then list various
237 information and change settings. See
238 <command>man pulse-cli-syntax</command>.
239 </para>
240
241 <para>
242 If <application>pulseaudio</application> was working but you no-longer
243 have sound, after checking for hardware issues (speakers or headphones
244 not connected, external amplifier not connected) you may need to fix it.
245 </para>
246
247 <para>
248 One suggestion is to close the application, such as
249 <application>firefox</application> where sound has stopped working, then
250 run: <command>pactl list short sinks</command> followed by:
251 <command>pacmd set-default-sink &lt;sink #&gt;</command> and then
252 restart the application.
253 </para>
254
255 <para>
256 If that does not work, a more drastic approach often works. After closing
257 the application, close pulseaudio, either using <command>pulseaudio
258 --kill</command> or, if that fails, <command>killall -KILL
259 pulseaudio</command> and then <command>rm -rf
260 ~/.config/pulse/*</command> (and perhaps also
261 <command>rm -rf ~/.pulse/*</command> if you have used a very old version
262 of pulse on this machine, then run <command>pulseaudio
263 --verbose</command> to restart it. If the daemon starts, restart the
264 application. See <command>man pulseaudio</command> for more options.
265 </para>
266
267 </sect3>
268 </sect2>
269
270 <sect2 role="content">
271 <title>Contents</title>
272
273 <segmentedlist>
274 <segtitle>Installed Programs</segtitle>
275 <segtitle>Installed Libraries</segtitle>
276 <segtitle>Installed Directories</segtitle>
277
278 <seglistitem>
279 <seg>
280 esdcompat, pacat, pacmd, pactl, padsp, pamon (symlink to pacat),
281 paplay (symlink to pacat), parec (symlink to pacat),
282 parecord (symlink to pacat), qpaeq, pasuspender,
283 pax11publish, pulseaudio, and
284 <!-- it looks like the equalizer needs FFTW: qpaeq, -->
285 start-pulseaudio-x11
286 </seg>
287 <seg>
288 libpulse.so,
289 libpulse-mainloop-glib.so,
290 libpulse-simple.so,
291 libpulsecommon-&pulseaudio-major-version;.so,
292 libpulsecore-&pulseaudio-major-version;.so, and
293 libpulsedsp.so
294 </seg>
295 <seg>
296 /etc/pulse,
297 /usr/include/pulse,
298 /usr/lib/cmake/PulseAudio,
299 /usr/lib/{pulseaudio,pulse-&pulseaudio-major-version;},
300 /usr/libexec/pulse, and
301 /usr/share/pulseaudio
302 </seg>
303 </seglistitem>
304 </segmentedlist>
305
306 <variablelist>
307 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
308 <?dbfo list-presentation="list"?>
309 <?dbhtml list-presentation="table"?>
310
311 <varlistentry id="esdcompat">
312 <term><command>esdcompat</command></term>
313 <listitem>
314 <para>
315 is the <application>PulseAudio</application> ESD wrapper script.
316 </para>
317 <indexterm zone="pulseaudio esdcompat">
318 <primary sortas="b-esdcompat">esdcompat</primary>
319 </indexterm>
320 </listitem>
321 </varlistentry>
322
323 <varlistentry id="pacat">
324 <term><command>pacat</command></term>
325 <listitem>
326 <para>
327 plays back or records raw or encoded audio streams on a
328 <application>PulseAudio</application> sound server.
329 </para>
330 <indexterm zone="pulseaudio pacat">
331 <primary sortas="b-pacat">pacat</primary>
332 </indexterm>
333 </listitem>
334 </varlistentry>
335
336 <varlistentry id="pacmd">
337 <term><command>pacmd</command></term>
338 <listitem>
339 <para>
340 is a tool used to reconfigure a <application>PulseAudio</application>
341 sound server during runtime.
342 </para>
343 <indexterm zone="pulseaudio pacmd">
344 <primary sortas="b-pacmd">pacmd</primary>
345 </indexterm>
346 </listitem>
347 </varlistentry>
348
349 <varlistentry id="pactl">
350 <term><command>pactl</command></term>
351 <listitem>
352 <para>
353 is used to control a running <application>PulseAudio</application>
354 sound server.
355 </para>
356 <indexterm zone="pulseaudio pactl">
357 <primary sortas="b-pactl">pactl</primary>
358 </indexterm>
359 </listitem>
360 </varlistentry>
361
362 <varlistentry id="padsp">
363 <term><command>padsp</command></term>
364 <listitem>
365 <para>
366 is the <application>PulseAudio</application> OSS Wrapper.
367 </para>
368 <indexterm zone="pulseaudio padsp">
369 <primary sortas="b-padsp">padsp</primary>
370 </indexterm>
371 </listitem>
372 </varlistentry>
373
374 <varlistentry id="pamon">
375 <term><command>pamon</command></term>
376 <listitem>
377 <para>
378 is a symbolic link to <command>pacat</command>.
379 </para>
380 <indexterm zone="pulseaudio pamon">
381 <primary sortas="b-pamon">pamon</primary>
382 </indexterm>
383 </listitem>
384 </varlistentry>
385
386 <varlistentry id="paplay">
387 <term><command>paplay</command></term>
388 <listitem>
389 <para>
390 is used to play audio files on a
391 <application>PulseAudio</application> sound server.
392 </para>
393 <indexterm zone="pulseaudio paplay">
394 <primary sortas="b-paplay">paplay</primary>
395 </indexterm>
396 </listitem>
397 </varlistentry>
398
399 <varlistentry id="parec">
400 <term><command>parec</command></term>
401 <listitem>
402 <para>
403 is a symbolic link to <command>pacat</command>.
404 </para>
405 <indexterm zone="pulseaudio parec">
406 <primary sortas="b-parec">parec</primary>
407 </indexterm>
408 </listitem>
409 </varlistentry>
410
411 <varlistentry id="parecord">
412 <term><command>parecord</command></term>
413 <listitem>
414 <para>
415 is a symbolic link to <command>pacat</command>.
416 </para>
417 <indexterm zone="pulseaudio parecord">
418 <primary sortas="b-parecord">parecord</primary>
419 </indexterm>
420 </listitem>
421 </varlistentry>
422
423 <varlistentry id="pasuspender">
424 <term><command>pasuspender</command></term>
425 <listitem>
426 <para>
427 is a tool that can be used to tell a local
428 <application>PulseAudio</application> sound server to temporarily
429 suspend access to the audio devices, to allow other applications
430 to access them directly.
431 </para>
432 <indexterm zone="pulseaudio pasuspender">
433 <primary sortas="b-pasuspender">pasuspender</primary>
434 </indexterm>
435 </listitem>
436 </varlistentry>
437
438 <varlistentry id="pax11publish">
439 <term><command>pax11publish</command></term>
440 <listitem>
441 <para>
442 is the <application>PulseAudio</application>
443 X11 Credential Utility.
444 </para>
445 <indexterm zone="pulseaudio pax11publish">
446 <primary sortas="b-pax11publish">pax11publish</primary>
447 </indexterm>
448 </listitem>
449 </varlistentry>
450
451 <varlistentry id="pulseaudio-prog">
452 <term><command>pulseaudio</command></term>
453 <listitem>
454 <para>
455 is a networked low-latency sound server for Linux.
456 </para>
457 <indexterm zone="pulseaudio pulseaudio-prog">
458 <primary sortas="b-pulseaudio">pulseaudio</primary>
459 </indexterm>
460 </listitem>
461 </varlistentry>
462
463<!-- only installed if FFTW is present -->
464 <varlistentry id="qpaeq">
465 <term><command>qpaeq</command></term>
466 <listitem>
467 <para>
468 is an equalizer interface for
469 <application>PulseAudio</application> equalizer sinks
470 (Requires <xref linkend="fftw"/> at build time).
471 </para>
472 <indexterm zone="pulseaudio qpaeq">
473 <primary sortas="b-qpaeq">qpaeq</primary>
474 </indexterm>
475 </listitem>
476 </varlistentry>
477
478<!-- Not found in PA 7.0
479 <varlistentry id="start-pulseaudio-kde">
480 <term><command>start-pulseaudio-kde</command></term>
481 <listitem>
482 <para>
483 Starts <application>PulseAudio</application> and loads
484 module-device-manager to use KDE routing policies.
485 </para>
486 <indexterm zone="pulseaudio start-pulseaudio-kde">
487 <primary sortas="b-start-pulseaudio-kde">start-pulseaudio-kde</primary>
488 </indexterm>
489 </listitem>
490 </varlistentry>
491-->
492 <varlistentry id="start-pulseaudio-x11">
493 <term><command>start-pulseaudio-x11</command></term>
494 <listitem>
495 <para>
496 starts <application>PulseAudio</application> and registers it to
497 the X11 session manager.
498 </para>
499 <indexterm zone="pulseaudio start-pulseaudio-x11">
500 <primary sortas="b-start-pulseaudio-x11">start-pulseaudio-x11</primary>
501 </indexterm>
502 </listitem>
503 </varlistentry>
504
505 </variablelist>
506
507 </sect2>
508
509</sect1>
Note: See TracBrowser for help on using the repository browser.