source: multimedia/libdriv/pulseaudio.xml@ be75671

12.2 trunk
Last change on this file since be75671 was 1b3ac7f, checked in by Douglas R. Reno <renodr@…>, 4 weeks ago

Pulseaudio: minor text tweaks

Also note that I've changed the URL for WebRTC Audio Processing to go to
www.freedesktop.org instead of freedesktop.org. This works around a
certificate issue upstream

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