source: multimedia/libdriv/pulseaudio.xml@ 3b63122c

xry111/soup3
Last change on this file since 3b63122c was e165712e, checked in by Xi Ruoyao <xry111@…>, 21 months ago

pulseaudio: drop libcap-pam dependency

PulseAudio does not use PAM at all.

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