source: multimedia/libdriv/pulseaudio.xml

trunk
Last change on this file was 1241ea19, checked in by Bruce Dubbs <bdubbs@…>, 2 months ago

Tag xfce and dependencies

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