source: multimedia/libdriv/pulseaudio.xml@ 9b43114

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 9b43114 was d437f756, checked in by Bruce Dubbs <bdubbs@…>, 3 years ago

More library tags

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

  • Property mode set to 100644
File size: 17.9 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 " ">
[ff40dcf]10 <!ENTITY pulseaudio-md5sum "1efc916251910f1e9d4df7810e3e69f8">
[64596e61]11 <!ENTITY pulseaudio-size "1.9 MB">
[ff40dcf]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)">
[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
[d437f756]42 &lfs101_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>,
[ff40dcf]111 <ulink url="http://tdb.samba.org/">TDB</ulink>, and
[d835b55]112 <ulink url="http://freedesktop.org/software/pulseaudio/webrtc-audio-processing/">
[ff40dcf]113 WebRTC AudioProcessing</ulink>
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/ -->
[ff40dcf]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.
[88136e4d]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
[e7c2eeb]171 users and groups:
[88136e4d]172 </para>
173
[96f2797]174<screen role="root"><userinput>rm -fv /etc/dbus-1/system.d/pulseaudio-system.conf</userinput></screen>
[88136e4d]175
[cff37d6]176 </sect2>
177 <sect2 role="commands">
178 <title>Command Explanations</title>
[88136e4d]179
[576b3dd]180 <para>
[70e41393]181 <parameter>-Dbluez5=false</parameter>: This switch prevents
[576b3dd]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>
[70e41393]186<!--
[88136e4d]187 <para>
[64596e61]188 <parameter>- -disable-rpath</parameter>: This switch prevents
[88136e4d]189 linker from adding a hardcoded runtime path to the installed
190 programs and libraries.
[70e41393]191 </para>-->
[88136e4d]192
[250cf69]193 </sect2>
[e5d2270e]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>
[d8f80e9]230<!--
[e5d2270e]231 <para>
[03de2e3]232 The default configuration files allow setting up a working installation.
[d43c7a1]233 However, a reference to Console-Kit needs to be removed.
234 Issue the following command as the
[e5d2270e]235 <systemitem class="username">root</systemitem> user:
236 </para>
237
[03de2e3]238<screen role="root"><userinput>sed -i '/load-module module-console-kit/s/^/#/' /etc/pulse/default.pa</userinput></screen>
[e5d2270e]239
[d8f80e9]240 In 13.0 this is protected via .ifexists module-console-kit.so
241-->
[e5d2270e]242 <para>
[d8f80e9]243 You may have to configure the audio system. You can start
[e5d2270e]244 <application>pulseaudio</application> in command line mode using
[03de2e3]245 <command>pulseaudio -C</command> and then list various
246 information and change settings. See
[e5d2270e]247 <command>man pulse-cli-syntax</command>.
248 </para>
[a8f5df3]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
[ff40dcf]271 of pulse on this machine), then run <command>pulseaudio
[a8f5df3]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
[e5d2270e]276 </sect3>
277 </sect2>
278
[cff37d6]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>
[c479d83d]288 <seg>
[ff40dcf]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
[e5d2270e]293 <!-- it looks like the equalizer needs FFTW: qpaeq, -->
[5622b1b7]294 start-pulseaudio-x11
[c479d83d]295 </seg>
296 <seg>
[11eb3ae5]297 libpulse.so,
[96f2797]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
[c479d83d]303 </seg>
304 <seg>
[4b141a4]305 /etc/pulse,
306 /usr/include/pulse,
[5622b1b7]307 /usr/lib/cmake/PulseAudio,
[d42f02c6]308 /usr/lib/{pulseaudio,pulse-&pulseaudio-major-version;},
[c870dc3]309 /usr/libexec/pulse, and
[4b141a4]310 /usr/share/pulseaudio
[c479d83d]311 </seg>
[cff37d6]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
[ff40dcf]320<!--
[cff37d6]321 <varlistentry id="esdcompat">
322 <term><command>esdcompat</command></term>
323 <listitem>
[c479d83d]324 <para>
325 is the <application>PulseAudio</application> ESD wrapper script.
326 </para>
[cff37d6]327 <indexterm zone="pulseaudio esdcompat">
328 <primary sortas="b-esdcompat">esdcompat</primary>
329 </indexterm>
330 </listitem>
331 </varlistentry>
[ff40dcf]332-->
[cff37d6]333
334 <varlistentry id="pacat">
335 <term><command>pacat</command></term>
336 <listitem>
[c479d83d]337 <para>
[0956cf1]338 plays back or records raw or encoded audio streams on a
[4c24eb0a]339 <application>PulseAudio</application> sound server
[c479d83d]340 </para>
[cff37d6]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>
[c479d83d]350 <para>
351 is a tool used to reconfigure a <application>PulseAudio</application>
[4c24eb0a]352 sound server during runtime
[c479d83d]353 </para>
[cff37d6]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>
[c479d83d]363 <para>
[a161de9]364 is used to control a running <application>PulseAudio</application>
[4c24eb0a]365 sound server
[c479d83d]366 </para>
[cff37d6]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>
[c479d83d]376 <para>
[4c24eb0a]377 is the <application>PulseAudio</application> OSS Wrapper
[c479d83d]378 </para>
[cff37d6]379 <indexterm zone="pulseaudio padsp">
380 <primary sortas="b-padsp">padsp</primary>
381 </indexterm>
382 </listitem>
383 </varlistentry>
384
[250cf69]385 <varlistentry id="pamon">
[cff37d6]386 <term><command>pamon</command></term>
387 <listitem>
[c479d83d]388 <para>
[4c24eb0a]389 is a symbolic link to <command>pacat</command>
[c479d83d]390 </para>
[cff37d6]391 <indexterm zone="pulseaudio pamon">
392 <primary sortas="b-pamon">pamon</primary>
393 </indexterm>
394 </listitem>
[250cf69]395 </varlistentry>
[cff37d6]396
397 <varlistentry id="paplay">
398 <term><command>paplay</command></term>
399 <listitem>
[c479d83d]400 <para>
[a161de9]401 is used to play audio files on a
[4c24eb0a]402 <application>PulseAudio</application> sound server
[c479d83d]403 </para>
[cff37d6]404 <indexterm zone="pulseaudio paplay">
405 <primary sortas="b-paplay">paplay</primary>
406 </indexterm>
407 </listitem>
408 </varlistentry>
409
[250cf69]410 <varlistentry id="parec">
[cff37d6]411 <term><command>parec</command></term>
412 <listitem>
[c479d83d]413 <para>
[4c24eb0a]414 is a symbolic link to <command>pacat</command>
[c479d83d]415 </para>
[cff37d6]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>
[c479d83d]425 <para>
[4c24eb0a]426 is a symbolic link to <command>pacat</command>
[c479d83d]427 </para>
[cff37d6]428 <indexterm zone="pulseaudio parecord">
429 <primary sortas="b-parecord">parecord</primary>
430 </indexterm>
431 </listitem>
[250cf69]432 </varlistentry>
[cff37d6]433
434 <varlistentry id="pasuspender">
435 <term><command>pasuspender</command></term>
436 <listitem>
[c479d83d]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
[4c24eb0a]441 to access them directly
[c479d83d]442 </para>
[cff37d6]443 <indexterm zone="pulseaudio pasuspender">
444 <primary sortas="b-pasuspender">pasuspender</primary>
445 </indexterm>
446 </listitem>
447 </varlistentry>
448
[250cf69]449 <varlistentry id="pax11publish">
[cff37d6]450 <term><command>pax11publish</command></term>
451 <listitem>
[c479d83d]452 <para>
453 is the <application>PulseAudio</application>
[4c24eb0a]454 X11 Credential Utility
[c479d83d]455 </para>
[cff37d6]456 <indexterm zone="pulseaudio pax11publish">
457 <primary sortas="b-pax11publish">pax11publish</primary>
458 </indexterm>
459 </listitem>
[250cf69]460 </varlistentry>
[cff37d6]461
[ff40dcf]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
[4c24eb0a]467 <application>Pulseaudio</application> server currently in use
[ff40dcf]468 </para>
469 <indexterm zone="pulseaudio pa-info">
470 <primary sortas="b-pa-info">pa-info</primary>
471 </indexterm>
472 </listitem>
473 </varlistentry>
474
[cff37d6]475 <varlistentry id="pulseaudio-prog">
[250cf69]476 <term><command>pulseaudio</command></term>
[cff37d6]477 <listitem>
[c479d83d]478 <para>
[4c24eb0a]479 is a networked low-latency sound server for Linux
[c479d83d]480 </para>
[cff37d6]481 <indexterm zone="pulseaudio pulseaudio-prog">
[c479d83d]482 <primary sortas="b-pulseaudio">pulseaudio</primary>
[cff37d6]483 </indexterm>
484 </listitem>
485 </varlistentry>
486
[d8f80e9]487<!-- only installed if FFTW is present -->
[250cf69]488 <varlistentry id="qpaeq">
489 <term><command>qpaeq</command></term>
490 <listitem>
[c479d83d]491 <para>
492 is an equalizer interface for
[d8f80e9]493 <application>PulseAudio</application> equalizer sinks
[4c24eb0a]494 (Requires <xref linkend="fftw"/> at build time)
[c479d83d]495 </para>
[250cf69]496 <indexterm zone="pulseaudio qpaeq">
497 <primary sortas="b-qpaeq">qpaeq</primary>
498 </indexterm>
499 </listitem>
500 </varlistentry>
[d8f80e9]501
[03de2e3]502<!-- Not found in PA 7.0
[758637c]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>
[03de2e3]515-->
[cff37d6]516 <varlistentry id="start-pulseaudio-x11">
517 <term><command>start-pulseaudio-x11</command></term>
518 <listitem>
[c479d83d]519 <para>
[0956cf1]520 starts <application>PulseAudio</application> and registers it to
[4c24eb0a]521 the X11 session manager
[c479d83d]522 </para>
[cff37d6]523 <indexterm zone="pulseaudio start-pulseaudio-x11">
524 <primary sortas="b-start-pulseaudio-x11">start-pulseaudio-x11</primary>
525 </indexterm>
526 </listitem>
[250cf69]527 </varlistentry>
[cff37d6]528
529 </variablelist>
530
531 </sect2>
532
533</sect1>
Note: See TracBrowser for help on using the repository browser.