source: multimedia/libdriv/pipewire.xml@ 0f8c7d1a

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 xry111/llvm18 xry111/soup3 xry111/xf86-video-removal
Last change on this file since 0f8c7d1a was 0f8c7d1a, checked in by Pierre Labastie <pierre.labastie@…>, 21 months ago

Update to pipewire-0.3.56

  • Property mode set to 100644
File size: 18.7 KB
RevLine 
[dcea4e3]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
7 <!ENTITY pipewire-download-http "https://github.com/PipeWire/pipewire/archive/&pipewire-version;/pipewire-&pipewire-version;.tar.gz">
8 <!ENTITY pipewire-download-ftp " ">
[0f8c7d1a]9 <!ENTITY pipewire-md5sum "6c57ba1440895ecb4c7dc817f8d9e5ec">
10 <!ENTITY pipewire-size "1.8 MB">
11 <!ENTITY pipewire-buildsize "69 MB (with tests)">
12 <!ENTITY pipewire-time "0.6 SBU (with tests, both using parallelism=4)">
[dcea4e3]13]>
14
15<sect1 id="pipewire" xreflabel="pipewire-&pipewire-version;">
16 <?dbhtml filename="pipewire.html"?>
17
18 <sect1info>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>Pipewire-&pipewire-version;</title>
23
24 <indexterm zone="pipewire">
25 <primary sortas="a-pipewire">pipewire</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to Pipewire</title>
30
31 <para>
32 The <application>pipewire</application> package contains a server and
33 user-space API to handle multimedia pipelines. This includes a universal
34 API to connect to multimedia devices, as well as sharing multimedia
35 files between applications.
36 </para>
37
[394eb4c6]38 &lfs111_checked;
[dcea4e3]39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>
44 Download (HTTP): <ulink url="&pipewire-download-http;"/>
45 </para>
46 </listitem>
47 <listitem>
48 <para>
49 Download (FTP): <ulink url="&pipewire-download-ftp;"/>
50 </para>
51 </listitem>
52 <listitem>
53 <para>
54 Download MD5 sum: &pipewire-md5sum;
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Download size: &pipewire-size;
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Estimated disk space required: &pipewire-buildsize;
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Estimated build time: &pipewire-time;
70 </para>
71 </listitem>
72 </itemizedlist>
73
74 <bridgehead renderas="sect3">Pipewire Dependencies</bridgehead>
75
[dab0680]76 <bridgehead renderas="sect4">Recommended</bridgehead>
77 <para role="recommended">
[9bd10279]78 <xref linkend="bluez"/>,
[dcea4e3]79 <xref linkend="gstreamer10"/>,
80 <xref linkend="gst10-plugins-base"/>,
81 <xref linkend="libva"/>,
[42e419b5]82 <xref linkend="pulseaudio"/>,
[9bd10279]83 <xref linkend="sbc"/>,
84 <xref linkend="sdl2"/>, and
85 <xref linkend="v4l-utils"/>
[dcea4e3]86 </para>
87
88 <bridgehead renderas="sect4">Optional</bridgehead>
89 <para role="optional">
[e07baac6]90 <xref linkend="ffmpeg"/>,
[dcea4e3]91 <xref linkend="valgrind"/>,
92 <xref linkend="doxygen"/> and
[9bd10279]93 <xref linkend="graphviz"/> (for documentation),
94 <ulink url="https://jackaudio.org/">JACK</ulink>,
[73fb07ad]95 <ulink url="https://github.com/EHfive/ldacBT">ldacBT</ulink>,
[a4586ac9]96 <ulink url="https://libcamera.org/">libcamera</ulink>,
[4ae96f8]97 <ulink url="https://vulkan.lunarg.com/sdk/home/">Vulkan</ulink>,
98 <ulink url="https://gitlab.freedesktop.org/pipewire/wireplumber/">WirePlumber</ulink>
99 (runtime, for running Pipewire daemon), and
[9bd10279]100 <ulink url="https://sourceforge.net/projects/xmltoman/">xmltoman</ulink>
[dcea4e3]101 </para>
102
103 <para condition="html" role="usernotes">
104 User Notes: <ulink url="&blfs-wiki;/pipewire"/>
105 </para>
106 </sect2>
107
108 <sect2 role="installation">
109 <title>Installation of Pipewire</title>
110
111 <para>
112 Install <application>pipewire</application> by running the following
113 commands:
114 </para>
115
116<screen><userinput>mkdir build &amp;&amp;
[aa17ca8]117cd build &amp;&amp;
[dcea4e3]118
[7fa5ff6]119meson --prefix=/usr --buildtype=release -Dsession-managers= .. &amp;&amp;
[dcea4e3]120ninja</userinput></screen>
121
122 <para>
[82a9ecf]123 To test the result, issue: <command>ninja test</command>.
[dcea4e3]124 </para>
125
126 <para>
127 Now, as the <systemitem class="username">root</systemitem> user:
128 </para>
129
130<screen role="root"><userinput>ninja install</userinput></screen>
131 </sect2>
132
133 <sect2 role="commands">
134 <title>Command Explanations</title>
135
[20f070d8]136 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
137 href="../../xincludes/meson-buildtype-release.xml"/>
138
[9bd10279]139 <para>
[7a9a7b26]140 <parameter>-Dsession-managers=</parameter>: This switch
[7fa5ff6]141 prevents automatic downloading external dependencies.
[9bd10279]142 </para>
143
[dcea4e3]144 <para>
145 <option>-Ddocs=true</option>: This switch enables the generation of HTML
146 documentation. The optional dependencies for documentation need to be
147 installed for this to work.
148 </para>
149
150 <para>
151 <option>-Dman=true</option>: This switch enables the generation of manual
152 pages. The optional dependencies for documentation need to be installed
153 for this to work.
154 </para>
[e1af972]155
156 <para>
157 <option>-Dffmpeg=enabled</option>: This switch enables using ffmpeg for
158 audio conversion as a SPA backend.
159 </para>
[dcea4e3]160 </sect2>
161
162 <sect2 role="content">
163 <title>Contents</title>
164
165 <segmentedlist>
166 <segtitle>Installed Programs</segtitle>
167 <segtitle>Installed Libraries</segtitle>
168 <segtitle>Installed Directories</segtitle>
169
170 <seglistitem>
171 <seg>
172 pipewire,
[0f8c7d1a]173 pipewire-avb,
[7a96e1b]174 pipewire-pulse,
[9bd10279]175 pw-cat,
176 pw-cli,
177 pw-dot,
[7c9ae62]178 pw-dump,
[cceceaaf]179 pw-jack,
[0ec63138]180 pw-link,
181 pw-loopback,
[42e419b5]182 pw-metadata,
183 pw-mididump,
[9bd10279]184 pw-mon,
185 pw-profiler,
[fa0bead]186 pw-reserve,
[7c9ae62]187 pw-top,
[59f6a1f]188 pw-v4l2,
[fa0bead]189 spa-acp-tool,
[9bd10279]190 spa-inspect,
[5d69f635]191 spa-json-dump,
[8558044]192 spa-monitor,
[fa0bead]193 spa-resample, and
[59f6a1f]194 pw-dsdplay, pw-midiplay, pw-midirecord, pw-play, and pw-record
195 (symlinks to pw-cat)
[dcea4e3]196 </seg>
197 <seg>
[fa0bead]198 libpipewire-0.3.so and
199 30 modules below /usr/lib/pipewire-0.3<!--,
[da1575a]200 [pierre July 29th, 2020]: all the following libs are in subdirectories
201 of /usr/lib. I'm not sure they should appear. But if they should, there
[8558044]202 are many more libs to list...
[9bd10279]203 libpulse-mainloop-glib-pw.so,
[11eb3ae5]204 libpulse.so,
205 libpulse-simple.so,
[9bd10279]206 libasound_module_pcm_pipewire.so, and
[8558044]207 libgstpipewire.so
[fa0bead]208 [bdubbs Sep 29th, 2020]: add
209 libpipewire-module-{access,adapter,client-device,client-node,
210 link-factory,metadata,portal,profiler,protocol-native,
211 rtkit,session-manager,spa-device,spa-device-factory,spa-node,
212 spa-node-factory}.so
213 libasound_module_ctl_pipewire.so
214 libasound_module_pcm_pipewire.so
215 libspa-{alsa,audioconvert,audiomixer,bluez5,control,dbus,support
216 v4l2,videoconvert}.so
217 -->
[dcea4e3]218 </seg>
219 <seg>
[1e2d824d]220 <!--/etc/pipewire,-->
[8558044]221 /usr/include/pipewire-0.3,
[9bd10279]222 /usr/include/spa-0.2,
[fa0bead]223 /usr/lib/alsa-lib,
[1e2d824d]224 <!--/usr/lib/gstreamer-1.0, already installed by gstreamer-->
225 /usr/lib/pipewire-0.3,
226 /usr/lib/spa-0.2,
227 /usr/share/alsa-card-profile,
228 /usr/share/pipewire, and
229 /usr/share/spa-0.2
[dcea4e3]230 </seg>
231 </seglistitem>
232 </segmentedlist>
233
234 <variablelist>
235 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
236 <?dbfo list-presentation="list"?>
237 <?dbhtml list-presentation="table"?>
238
239 <varlistentry id="pipewire-prog">
240 <term><command>pipewire</command></term>
241 <listitem>
242 <para>
243 is a service that allows access to multimedia devices and allows
[4c24eb0a]244 sharing of multimedia files between applications
[dcea4e3]245 </para>
246 <indexterm zone="pipewire pipewire-prog">
247 <primary sortas="b-pipewire">pipewire</primary>
248 </indexterm>
249 </listitem>
250 </varlistentry>
251
[9bd10279]252 <varlistentry id="pipewire-media-session">
253 <term><command>pipewire-media-session</command></term>
254 <listitem>
255 <para>
256 is a service that allows a desktop environment to know when media
[4c24eb0a]257 files are being played through pipewire
[9bd10279]258 </para>
259 <indexterm zone="pipewire pipewire-media-session">
260 <primary sortas="b-pipewire-media-session">pipewire-media-session</primary>
261 </indexterm>
262 </listitem>
263 </varlistentry>
264
[7a96e1b]265 <varlistentry id="pipewire-pulse">
266 <term><command>pipewire-pulse</command></term>
267 <listitem>
268 <para>
[8558044]269 starts a Pulseaudio-compatible version of
[4c24eb0a]270 the pipewire service
[7a96e1b]271 </para>
272 <indexterm zone="pipewire pipewire-pulse">
273 <primary sortas="b-pipewire-pulse">pipewire-pulse</primary>
274 </indexterm>
275 </listitem>
276 </varlistentry>
277
[9bd10279]278 <varlistentry id="pw-cat">
279 <term><command>pw-cat</command></term>
280 <listitem>
281 <para>
[4c24eb0a]282 allows you to play or record media using a pipewire instance
[9bd10279]283 </para>
284 <indexterm zone="pipewire pw-cat">
285 <primary sortas="b-pw-cat">pw-cat</primary>
286 </indexterm>
287 </listitem>
288 </varlistentry>
289
290 <varlistentry id="pw-cli">
291 <term><command>pw-cli</command></term>
[dcea4e3]292 <listitem>
293 <para>
[4c24eb0a]294 allows you to interact with a pipewire instance
[dcea4e3]295 </para>
[9bd10279]296 <indexterm zone="pipewire pw-cli">
297 <primary sortas="b-pw-cli">pw-cli</primary>
298 </indexterm>
299 </listitem>
300 </varlistentry>
301
302 <varlistentry id="pw-dot">
303 <term><command>pw-dot</command></term>
304 <listitem>
305 <para>
[4c24eb0a]306 lists all of the daemons and objects in use by pipewire
[9bd10279]307 </para>
308 <indexterm zone="pipewire pw-dot">
309 <primary sortas="b-pw-dot">pw-dot</primary>
[dcea4e3]310 </indexterm>
311 </listitem>
312 </varlistentry>
313
[7c9ae62]314 <varlistentry id="pw-dump">
315 <term><command>pw-dump</command></term>
316 <listitem>
317 <para>
318 dumps debug messages from a local or remote pipewire instance to
[4c24eb0a]319 the console
[7c9ae62]320 </para>
321 <indexterm zone="pipewire pw-dump">
322 <primary sortas="b-pw-dump">pw-dump</primary>
323 </indexterm>
324 </listitem>
325 </varlistentry>
326
[cceceaaf]327 <varlistentry id="pw-jack">
328 <term><command>pw-jack</command></term>
329 <listitem>
330 <para>
[0ec63138]331 runs JACK applications on a pipewire instance
[cceceaaf]332 </para>
333 <indexterm zone="pipewire pw-jack">
334 <primary sortas="b-pw-jack">pw-jack</primary>
335 </indexterm>
336 </listitem>
337 </varlistentry>
338
[0ec63138]339 <varlistentry id="pw-link">
340 <term><command>pw-link</command></term>
341 <listitem>
342 <para>
343 links pipewire ports together
344 </para>
345 <indexterm zone="pipewire pw-link">
346 <primary sortas="b-pw-link">pw-link</primary>
347 </indexterm>
348 </listitem>
349 </varlistentry>
350
351 <varlistentry id="pw-loopback">
352 <term><command>pw-loopback</command></term>
353 <listitem>
354 <para>
355 initializes a loopback link between two different pipewire ports.
356 This is useful for testing and debugging
357 </para>
358 <indexterm zone="pipewire pw-loopback">
359 <primary sortas="b-pw-loopback">pw-loopback</primary>
360 </indexterm>
361 </listitem>
362 </varlistentry>
363
[42e419b5]364 <varlistentry id="pw-metadata">
365 <term><command>pw-metadata</command></term>
366 <listitem>
367 <para>
[4c24eb0a]368 inspects, adds, and removes metadata for objects
[42e419b5]369 </para>
370 <indexterm zone="pipewire pw-metadata">
371 <primary sortas="b-pw-metadata">pw-metadata</primary>
372 </indexterm>
373 </listitem>
374 </varlistentry>
375
376 <varlistentry id="pw-mididump">
377 <term><command>pw-mididump</command></term>
378 <listitem>
379 <para>
[4c24eb0a]380 dumps MIDI messages from a file to the screen
[42e419b5]381 </para>
382 <indexterm zone="pipewire pw-mididump">
383 <primary sortas="b-pw-mididump">pw-mididump</primary>
384 </indexterm>
385 </listitem>
386 </varlistentry>
387
[9bd10279]388 <varlistentry id="pw-mon">
389 <term><command>pw-mon</command></term>
[dcea4e3]390 <listitem>
391 <para>
[4c24eb0a]392 allows you to monitor pipewire instances
[dcea4e3]393 </para>
[9bd10279]394 <indexterm zone="pipewire pw-mon">
395 <primary sortas="b-pw-mon">pw-mon</primary>
396 </indexterm>
397 </listitem>
398 </varlistentry>
399
400 <varlistentry id="pw-profiler">
401 <term><command>pw-profiler</command></term>
402 <listitem>
403 <para>
[4c24eb0a]404 tracks memory usage and API calls used by pipewire
[9bd10279]405 </para>
406 <indexterm zone="pipewire pw-profiler">
407 <primary sortas="b-pw-profiler">pw-profiler</primary>
[dcea4e3]408 </indexterm>
409 </listitem>
410 </varlistentry>
411
[7a96e1b]412<!--
[11eb3ae5]413 <varlistentry id="pw-pulse">
414 <term><command>pw-pulse</command></term>
415 <listitem>
416 <para>
[c0221530]417 runs Pulseaudio applications on pipewire.
[11eb3ae5]418 </para>
419 <indexterm zone="pipewire pw-pulse">
420 <primary sortas="b-pw-pulse">pw-pulse</primary>
421 </indexterm>
422 </listitem>
423 </varlistentry>
[7a96e1b]424-->
[11eb3ae5]425
[fa0bead]426 <varlistentry id="pw-reserve">
427 <term><command>pw-reserve</command></term>
428 <listitem>
429 <para>
[4c24eb0a]430 reserves or monitors a device via D-Bus
[fa0bead]431 </para>
432 <indexterm zone="pipewire pw-reserve">
433 <primary sortas="b-pw-reserve">pw-reserve</primary>
434 </indexterm>
435 </listitem>
436 </varlistentry>
437
[7c9ae62]438 <varlistentry id="pw-top">
439 <term><command>pw-top</command></term>
440 <listitem>
441 <para>
[4c24eb0a]442 displays real-time performance information from pipewire
[7c9ae62]443 </para>
444 <indexterm zone="pipewire pw-top">
445 <primary sortas="b-pw-top">pw-top</primary>
446 </indexterm>
447 </listitem>
448 </varlistentry>
449
[59f6a1f]450 <varlistentry id="pw-v4l2">
451 <term><command>pw-v4l2</command></term>
452 <listitem>
453 <para>
454 runs v4l2 applications on a pipewire instance
455 </para>
456 <indexterm zone="pipewire pw-v4l2">
457 <primary sortas="b-pw-v4l2">pw-v4l2</primary>
458 </indexterm>
459 </listitem>
460 </varlistentry>
461
[fa0bead]462 <varlistentry id="spa-acp-tool">
463 <term><command>spa-acp-tool</command></term>
464 <listitem>
465 <para>
[4c24eb0a]466 inspects the card profile of a given sound card
[fa0bead]467 </para>
468 <indexterm zone="pipewire spa-acp-tool">
469 <primary sortas="b-spa-acp-tool">spa-acp-tool</primary>
470 </indexterm>
471 </listitem>
472 </varlistentry>
473
[dcea4e3]474 <varlistentry id="spa-inspect">
475 <term><command>spa-inspect</command></term>
476 <listitem>
477 <para>
[4c24eb0a]478 allows you to inspect pipewire plugins
[dcea4e3]479 </para>
480 <indexterm zone="pipewire spa-inspect">
481 <primary sortas="b-spa-inspect">spa-inspect</primary>
482 </indexterm>
483 </listitem>
484 </varlistentry>
485
[5d69f635]486 <varlistentry id="spa-json-dump">
487 <term><command>spa-json-dump</command></term>
488 <listitem>
489 <para>
490 dumps the current pipewire configuration in JSON format.
491 </para>
492 <indexterm zone="pipewire spa-json-dump">
493 <primary sortas="b-spa-json-dump">spa-json-dump</primary>
494 </indexterm>
495 </listitem>
496 </varlistentry>
497
[dcea4e3]498 <varlistentry id="spa-monitor">
499 <term><command>spa-monitor</command></term>
500 <listitem>
501 <para>
[4c24eb0a]502 allows you to monitor pipewire plugins
[dcea4e3]503 </para>
504 <indexterm zone="pipewire spa-monitor">
505 <primary sortas="b-spa-monitor">spa-monitor</primary>
506 </indexterm>
507 </listitem>
508 </varlistentry>
509
[fa0bead]510 <varlistentry id="spa-resample">
511 <term><command>spa-resample</command></term>
512 <listitem>
513 <para>
[4c24eb0a]514 resamples a given file
[fa0bead]515 </para>
516 <indexterm zone="pipewire spa-resample">
517 <primary sortas="b-spa-resample">spa-resample</primary>
518 </indexterm>
519 </listitem>
520 </varlistentry>
521
[dcea4e3]522 <varlistentry id="libpipewire">
[9bd10279]523 <term><filename class="libraryfile">libpipewire-0.3.so</filename></term>
[dcea4e3]524 <listitem>
525 <para>
[4c24eb0a]526 contains API functions for handling multimedia pipelines
[dcea4e3]527 </para>
528 <indexterm zone="pipewire libpipewire">
[9bd10279]529 <primary sortas="c-libpipewire">libpipewire-0.3.so</primary>
530 </indexterm>
531 </listitem>
532 </varlistentry>
[da1575a]533<!--
[9bd10279]534 <varlistentry id="libpulse-mainloop-glib-pw">
535 <term><filename class="libraryfile">libpulse-mainloop-glib-pw.so</filename></term>
536 <listitem>
537 <para>
538 provides a glib main() loop for pulseaudio to route media through
539 pipewire.
540 </para>
541 <indexterm zone="pipewire libpulse-mainloop-glib-pw">
542 <primary sortas="c-libpulse-mainloop-glib-pw">libpulse-mainloop-glib-pw.so</primary>
543 </indexterm>
544 </listitem>
545 </varlistentry>
546
[11eb3ae5]547 <varlistentry id="libpulse">
548 <term><filename class="libraryfile">libpulse.so</filename></term>
[9bd10279]549 <listitem>
550 <para>
551 is a pipewire plugin for pulseaudio.
552 </para>
[11eb3ae5]553 <indexterm zone="pipewire libpulse">
554 <primary sortas="c-libpulse">libpulse.so</primary>
[9bd10279]555 </indexterm>
556 </listitem>
557 </varlistentry>
558
[11eb3ae5]559 <varlistentry id="libpulse-simple">
560 <term><filename class="libraryfile">libpulse-simple.so</filename></term>
[9bd10279]561 <listitem>
562 <para>
563 is a simplified version of the pulseaudio plugin for pipewire.
564 </para>
[11eb3ae5]565 <indexterm zone="pipewire libpulse-simple">
566 <primary sortas="c-libpulse-simple">libpulse-simple.so</primary>
[9bd10279]567 </indexterm>
568 </listitem>
569 </varlistentry>
570
571 <varlistentry id="libasound_module_pcm_pipewire">
572 <term><filename class="libraryfile">libasound_module_pcm_pipewire.so</filename></term>
573 <listitem>
574 <para>
575 is an ALSA plugin for pipewire.
576 </para>
577 <indexterm zone="pipewire libasound_module_pcm_pipewire">
578 <primary sortas="c-libasound_module_pcm_pipewire">libasound_module_pcm_pipewire.so</primary>
579 </indexterm>
580 </listitem>
581 </varlistentry>
582
583 <varlistentry id="libgstpipewire">
584 <term><filename class="libraryfile">libgstpipewire.so</filename></term>
585 <listitem>
586 <para>
587 is a Gstreamer plugin for pipewire.
588 </para>
589 <indexterm zone="pipewire libgstpipewire">
590 <primary sortas="c-libgstpipewire">libgstpipewire.so</primary>
[dcea4e3]591 </indexterm>
592 </listitem>
[da1575a]593 </varlistentry>-->
[dcea4e3]594 </variablelist>
595 </sect2>
[4c24eb0a]596
[dcea4e3]597</sect1>
Note: See TracBrowser for help on using the repository browser.