source: multimedia/libdriv/pipewire.xml@ 7fa5ff6

11.1 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 upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 7fa5ff6 was 7fa5ff6, checked in by Bruce Dubbs <bdubbs@…>, 2 years ago

Package updates.
Update to git-2.34.0.
Update to libuninameslist-20211114.
Update to sg3_utils-1.47.
Update to pipewire-0.3.40.
Update to curl-7.80.0.
Update to mlt-7.2.0.

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