source: multimedia/libdriv/pulseaudio.xml@ 70e41393

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 70e41393 was 70e41393, checked in by Ken Moffat <ken@…>, 3 years ago

PulseAudio - reinstate updated switch re bluez, dbus, sbc.

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

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