source: multimedia/libdriv/pulseaudio.xml@ 1374aae8

11.0 11.1 11.2 11.3 12.0 12.1 12.2 gimp3 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/for-12.3 xry111/intltool xry111/llvm18 xry111/soup3 xry111/spidermonkey128 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 1374aae8 was 6913e834, checked in by Ken Moffat <ken@…>, 3 years ago

~PulseAudio - document a switch.

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