source: multimedia/libdriv/pulseaudio.xml@ ff40dcf

10.1 11.0 11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since ff40dcf was ff40dcf, checked in by Douglas R. Reno <renodr@…>, 3 years ago

Update to pygments-2.7.4 (Python Module)
Update to gcr-3.38.1
Update to thunar-4.16.2
Update to pulseaudio-14.2
Update to xapian-core-1.4.18

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

  • Property mode set to 100644
File size: 17.9 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 "1efc916251910f1e9d4df7810e3e69f8">
11 <!ENTITY pulseaudio-size "1.9 MB">
12 <!ENTITY pulseaudio-buildsize "79 MB (add 1 MB for tests)">
13 <!ENTITY pulseaudio-time "0.1 SBU (Using parallelism=4; add 0.3 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 &lfs10_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>, and
112 <ulink url="http://freedesktop.org/software/pulseaudio/webrtc-audio-processing/">
113 WebRTC AudioProcessing</ulink>
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
146<screen><userinput>mkdir build &amp;&amp;
147cd build &amp;&amp;
148
149meson --prefix=/usr -Ddatabase=gdbm -Dbluez5=false &amp;&amp;
150ninja</userinput></screen>
151
152 <para>
153 To test the results, issue: <command>ninja test</command>. One test
154 fails if the tests are not run as the root user, but this can be ignored.
155 </para>
156
157 <para>
158 Now, as the <systemitem class="username">root</systemitem> user:
159 </para>
160
161<screen role="root"><userinput>ninja install</userinput></screen>
162
163 <!-- http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/ -->
164 <para>Running PulseAudio as a system-wide daemon is possible but not
165 recommended. See <ulink
166 url="https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/"/>
167 for more information.
168 While still as the <systemitem class="username">root</systemitem>
169 user, remove the <application>D-Bus</application> configuration file
170 for the system wide daemon to avoid creating unnecessary system
171 users and groups:
172 </para>
173
174<screen role="root"><userinput>rm -fv /etc/dbus-1/system.d/pulseaudio-system.conf</userinput></screen>
175
176 </sect2>
177 <sect2 role="commands">
178 <title>Command Explanations</title>
179
180 <para>
181 <parameter>-Dbluez5=false</parameter>: This switch prevents
182 a runtime error if <xref linkend="dbus"/> and <xref linkend="sbc"/>
183 are both installed but <xref linkend="bluez"/> is not installed.
184 Remove this if you have installed all three packages.
185 </para>
186<!--
187 <para>
188 <parameter>- -disable-rpath</parameter>: This switch prevents
189 linker from adding a hardcoded runtime path to the installed
190 programs and libraries.
191 </para>-->
192
193 </sect2>
194 <sect2 role="configuration">
195 <title>Configuring PulseAudio</title>
196
197 <sect3 id="pulseaudio-config">
198 <title>Config Files</title>
199 <para>
200 There are system wide configuration files:
201 <filename>/etc/pulse/daemon.conf</filename>,
202 <filename>/etc/pulse/client.conf</filename>,
203 <filename>/etc/pulse/default.pa</filename>, and user configuration
204 files with the same names in
205 <filename class="directory">~/.config/pulse</filename>. User
206 configuration files take precedence over system wide ones.
207 </para>
208
209 <indexterm zone="pulseaudio pulseaudio-config">
210 <primary sortas="e-AA.config-pulse">~/.config/pulse</primary>
211 </indexterm>
212
213 <indexterm zone="pulseaudio pulseaudio-config">
214 <primary
215 sortas="e-etc-pulse-daemon.conf">/etc/pulse/daemon.conf</primary>
216 </indexterm>
217
218 <indexterm zone="pulseaudio pulseaudio-config">
219 <primary
220 sortas="e-etc-pulse-client.conf">/etc/pulse/client.conf</primary>
221 </indexterm>
222
223 <indexterm zone="pulseaudio pulseaudio-config">
224 <primary
225 sortas="e-etc-pulse-default.pa">/etc/pulse/default.pa</primary>
226 </indexterm>
227 </sect3>
228
229 <sect3><title>Configuration Information</title>
230<!--
231 <para>
232 The default configuration files allow setting up a working installation.
233 However, a reference to Console-Kit needs to be removed.
234 Issue the following command as the
235 <systemitem class="username">root</systemitem> user:
236 </para>
237
238<screen role="root"><userinput>sed -i '/load-module module-console-kit/s/^/#/' /etc/pulse/default.pa</userinput></screen>
239
240 In 13.0 this is protected via .ifexists module-console-kit.so
241-->
242 <para>
243 You may have to configure the audio system. You can start
244 <application>pulseaudio</application> in command line mode using
245 <command>pulseaudio -C</command> and then list various
246 information and change settings. See
247 <command>man pulse-cli-syntax</command>.
248 </para>
249
250 <para>
251 If <application>pulseaudio</application> was working but you no-longer
252 have sound, after checking for hardware issues (speakers or headphones
253 not connected, external amplifier not connected) you may need to fix it.
254 </para>
255
256 <para>
257 One suggestion is to close the application, such as
258 <application>firefox</application> where sound has stopped working, then
259 run: <command>pactl list short sinks</command> followed by:
260 <command>pacmd set-default-sink &lt;sink #&gt;</command> and then
261 restart the application.
262 </para>
263
264 <para>
265 If that does not work, a more drastic approach often works. After closing
266 the application, close pulseaudio, either using <command>pulseaudio
267 --kill</command> or, if that fails, <command>killall -KILL
268 pulseaudio</command> and then <command>rm -rf
269 ~/.config/pulse/*</command> (and perhaps also
270 <command>rm -rf ~/.pulse/*</command> if you have used a very old version
271 of pulse on this machine), then run <command>pulseaudio
272 --verbose</command> to restart it. If the daemon starts, restart the
273 application. See <command>man pulseaudio</command> for more options.
274 </para>
275
276 </sect3>
277 </sect2>
278
279 <sect2 role="content">
280 <title>Contents</title>
281
282 <segmentedlist>
283 <segtitle>Installed Programs</segtitle>
284 <segtitle>Installed Libraries</segtitle>
285 <segtitle>Installed Directories</segtitle>
286
287 <seglistitem>
288 <seg>
289 <!--esdcompat,--> pacat, pacmd, pactl, padsp,
290 pamon (symlink to pacat), paplay (symlink to pacat),
291 parec (symlink to pacat), parecord (symlink to pacat), qpaeq,
292 pasuspender, pax11publish, pulseaudio, and
293 <!-- it looks like the equalizer needs FFTW: qpaeq, -->
294 start-pulseaudio-x11
295 </seg>
296 <seg>
297 libpulse.so,
298 libpulse-mainloop-glib.so,
299 libpulse-simple.so,
300 libpulsecommon-&pulseaudio-major-version;.so,
301 libpulsecore-&pulseaudio-major-version;.so, and
302 libpulsedsp.so
303 </seg>
304 <seg>
305 /etc/pulse,
306 /usr/include/pulse,
307 /usr/lib/cmake/PulseAudio,
308 /usr/lib/{pulseaudio,pulse-&pulseaudio-major-version;},
309 /usr/libexec/pulse, and
310 /usr/share/pulseaudio
311 </seg>
312 </seglistitem>
313 </segmentedlist>
314
315 <variablelist>
316 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
317 <?dbfo list-presentation="list"?>
318 <?dbhtml list-presentation="table"?>
319
320<!--
321 <varlistentry id="esdcompat">
322 <term><command>esdcompat</command></term>
323 <listitem>
324 <para>
325 is the <application>PulseAudio</application> ESD wrapper script.
326 </para>
327 <indexterm zone="pulseaudio esdcompat">
328 <primary sortas="b-esdcompat">esdcompat</primary>
329 </indexterm>
330 </listitem>
331 </varlistentry>
332-->
333
334 <varlistentry id="pacat">
335 <term><command>pacat</command></term>
336 <listitem>
337 <para>
338 plays back or records raw or encoded audio streams on a
339 <application>PulseAudio</application> sound server.
340 </para>
341 <indexterm zone="pulseaudio pacat">
342 <primary sortas="b-pacat">pacat</primary>
343 </indexterm>
344 </listitem>
345 </varlistentry>
346
347 <varlistentry id="pacmd">
348 <term><command>pacmd</command></term>
349 <listitem>
350 <para>
351 is a tool used to reconfigure a <application>PulseAudio</application>
352 sound server during runtime.
353 </para>
354 <indexterm zone="pulseaudio pacmd">
355 <primary sortas="b-pacmd">pacmd</primary>
356 </indexterm>
357 </listitem>
358 </varlistentry>
359
360 <varlistentry id="pactl">
361 <term><command>pactl</command></term>
362 <listitem>
363 <para>
364 is used to control a running <application>PulseAudio</application>
365 sound server.
366 </para>
367 <indexterm zone="pulseaudio pactl">
368 <primary sortas="b-pactl">pactl</primary>
369 </indexterm>
370 </listitem>
371 </varlistentry>
372
373 <varlistentry id="padsp">
374 <term><command>padsp</command></term>
375 <listitem>
376 <para>
377 is the <application>PulseAudio</application> OSS Wrapper.
378 </para>
379 <indexterm zone="pulseaudio padsp">
380 <primary sortas="b-padsp">padsp</primary>
381 </indexterm>
382 </listitem>
383 </varlistentry>
384
385 <varlistentry id="pamon">
386 <term><command>pamon</command></term>
387 <listitem>
388 <para>
389 is a symbolic link to <command>pacat</command>.
390 </para>
391 <indexterm zone="pulseaudio pamon">
392 <primary sortas="b-pamon">pamon</primary>
393 </indexterm>
394 </listitem>
395 </varlistentry>
396
397 <varlistentry id="paplay">
398 <term><command>paplay</command></term>
399 <listitem>
400 <para>
401 is used to play audio files on a
402 <application>PulseAudio</application> sound server.
403 </para>
404 <indexterm zone="pulseaudio paplay">
405 <primary sortas="b-paplay">paplay</primary>
406 </indexterm>
407 </listitem>
408 </varlistentry>
409
410 <varlistentry id="parec">
411 <term><command>parec</command></term>
412 <listitem>
413 <para>
414 is a symbolic link to <command>pacat</command>.
415 </para>
416 <indexterm zone="pulseaudio parec">
417 <primary sortas="b-parec">parec</primary>
418 </indexterm>
419 </listitem>
420 </varlistentry>
421
422 <varlistentry id="parecord">
423 <term><command>parecord</command></term>
424 <listitem>
425 <para>
426 is a symbolic link to <command>pacat</command>.
427 </para>
428 <indexterm zone="pulseaudio parecord">
429 <primary sortas="b-parecord">parecord</primary>
430 </indexterm>
431 </listitem>
432 </varlistentry>
433
434 <varlistentry id="pasuspender">
435 <term><command>pasuspender</command></term>
436 <listitem>
437 <para>
438 is a tool that can be used to tell a local
439 <application>PulseAudio</application> sound server to temporarily
440 suspend access to the audio devices, to allow other applications
441 to access them directly.
442 </para>
443 <indexterm zone="pulseaudio pasuspender">
444 <primary sortas="b-pasuspender">pasuspender</primary>
445 </indexterm>
446 </listitem>
447 </varlistentry>
448
449 <varlistentry id="pax11publish">
450 <term><command>pax11publish</command></term>
451 <listitem>
452 <para>
453 is the <application>PulseAudio</application>
454 X11 Credential Utility.
455 </para>
456 <indexterm zone="pulseaudio pax11publish">
457 <primary sortas="b-pax11publish">pax11publish</primary>
458 </indexterm>
459 </listitem>
460 </varlistentry>
461
462 <varlistentry id="pa-info">
463 <term><command>pa-info</command></term>
464 <listitem>
465 <para>
466 is a shell script that prints various information relating to the
467 <application>Pulseaudio</application> server currently in use.
468 </para>
469 <indexterm zone="pulseaudio pa-info">
470 <primary sortas="b-pa-info">pa-info</primary>
471 </indexterm>
472 </listitem>
473 </varlistentry>
474
475 <varlistentry id="pulseaudio-prog">
476 <term><command>pulseaudio</command></term>
477 <listitem>
478 <para>
479 is a networked low-latency sound server for Linux.
480 </para>
481 <indexterm zone="pulseaudio pulseaudio-prog">
482 <primary sortas="b-pulseaudio">pulseaudio</primary>
483 </indexterm>
484 </listitem>
485 </varlistentry>
486
487<!-- only installed if FFTW is present -->
488 <varlistentry id="qpaeq">
489 <term><command>qpaeq</command></term>
490 <listitem>
491 <para>
492 is an equalizer interface for
493 <application>PulseAudio</application> equalizer sinks
494 (Requires <xref linkend="fftw"/> at build time).
495 </para>
496 <indexterm zone="pulseaudio qpaeq">
497 <primary sortas="b-qpaeq">qpaeq</primary>
498 </indexterm>
499 </listitem>
500 </varlistentry>
501
502<!-- Not found in PA 7.0
503 <varlistentry id="start-pulseaudio-kde">
504 <term><command>start-pulseaudio-kde</command></term>
505 <listitem>
506 <para>
507 Starts <application>PulseAudio</application> and loads
508 module-device-manager to use KDE routing policies.
509 </para>
510 <indexterm zone="pulseaudio start-pulseaudio-kde">
511 <primary sortas="b-start-pulseaudio-kde">start-pulseaudio-kde</primary>
512 </indexterm>
513 </listitem>
514 </varlistentry>
515-->
516 <varlistentry id="start-pulseaudio-x11">
517 <term><command>start-pulseaudio-x11</command></term>
518 <listitem>
519 <para>
520 starts <application>PulseAudio</application> and registers it to
521 the X11 session manager.
522 </para>
523 <indexterm zone="pulseaudio start-pulseaudio-x11">
524 <primary sortas="b-start-pulseaudio-x11">start-pulseaudio-x11</primary>
525 </indexterm>
526 </listitem>
527 </varlistentry>
528
529 </variablelist>
530
531 </sect2>
532
533</sect1>
Note: See TracBrowser for help on using the repository browser.