source: multimedia/libdriv/wireplumber.xml@ ffe0646

12.1 ken/TL2024 lazarus plabs/newcss python3.11 rahul/power-profiles-daemon trunk xry111/llvm18
Last change on this file since ffe0646 was ffe0646, checked in by Rahul Chandra <rahul@…>, 5 months ago

Update to wireplumber-0.4.17

  • Property mode set to 100644
File size: 8.7 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 wireplumber-download-http "https://gitlab.freedesktop.org/pipewire/wireplumber/-/archive/&wireplumber-version;/wireplumber-&wireplumber-version;.tar.bz2">
8 <!ENTITY wireplumber-download-ftp " ">
9 <!ENTITY wireplumber-md5sum "1e90be7d302077e3b7e347c9cd889ff0">
10 <!ENTITY wireplumber-size "324 KB">
11 <!ENTITY wireplumber-buildsize "16 MB (add 22 MB for tests)">
12 <!ENTITY wireplumber-time "0.1 SBU (4 jobs, with tests)">
13]>
14
15<sect1 id="wireplumber" xreflabel="Wireplumber-&wireplumber-version;">
16 <?dbhtml filename="wireplumber.html"?>
17
18 <title>Wireplumber-&wireplumber-version;</title>
19
20 <indexterm zone="wireplumber">
21 <primary sortas="a-wireplumber">Wireplumber</primary>
22 </indexterm>
23
24 <sect2 role="package">
25 <title>Introduction to Wireplumber</title>
26
27 <para>
28 The <application>Wireplumber</application> package contains a session and
29 policy manager for <application>Pipewire</application>.
30 </para>
31
32 &lfs120_checked;
33
34 <bridgehead renderas="sect3">Package Information</bridgehead>
35 <itemizedlist spacing="compact">
36 <listitem>
37 <para>
38 Download (HTTP): <ulink url="&wireplumber-download-http;"/>
39 </para>
40 </listitem>
41 <listitem>
42 <para>
43 Download (FTP): <ulink url="&wireplumber-download-ftp;"/>
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download MD5 sum: &wireplumber-md5sum;
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download size: &wireplumber-size;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Estimated disk space required: &wireplumber-buildsize;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Estimated build time: &wireplumber-time;
64 </para>
65 </listitem>
66 </itemizedlist>
67
68 <bridgehead renderas="sect3">Wireplumber Dependencies</bridgehead>
69
70 <bridgehead renderas="sect4">Required</bridgehead>
71 <para role="required">
72 <phrase revision="sysv"><xref linkend="elogind"/>,</phrase>
73 <xref linkend="glib2"/>, <phrase revision="sysv">and</phrase>
74 <xref linkend="pipewire"/><phrase revision="systemd">, and
75 <xref role="runtime" linkend="systemd"/> (runtime, rebuilt with
76 <xref role="nodep" linkend="linux-pam"/>)
77 </phrase>
78 </para>
79
80 <bridgehead renderas="sect4">Recommended</bridgehead>
81 <para role="recommended">
82 <xref linkend="lua"/>
83 </para>
84
85 <bridgehead renderas="sect4">Optional</bridgehead>
86 <para role="optional">
87 <xref linkend="doxygen"/>,
88 <xref linkend="gobject-introspection"/>,
89 <xref linkend="lxml"/>,
90 <xref linkend="sphinx"/>,
91 <xref linkend="sphinx_rtd_theme"/>, and
92 <ulink url="https://pypi.org/project/breathe/">Breathe</ulink>
93 </para>
94
95 </sect2>
96
97 <sect2 role="installation">
98 <title>Installation of Wireplumber</title>
99
100 <para>
101 Install <application>Wireplumber</application> by running the following
102 commands:
103 </para>
104
105<screen><userinput>mkdir build &amp;&amp;
106cd build &amp;&amp;
107
108meson setup --prefix=/usr --buildtype=release -Dsystem-lua=true .. &amp;&amp;
109ninja</userinput></screen>
110
111 <para>
112 To test the results, issue: <command>ninja test</command>.
113 </para>
114
115 <para>
116 Now, as the <systemitem class="username">root</systemitem> user:
117 </para>
118
119<screen role="root"><userinput>ninja install</userinput></screen>
120
121 </sect2>
122
123 <sect2 role="commands">
124 <title>Command Explanations</title>
125
126 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
127 href="../../xincludes/meson-buildtype-release.xml"/>
128
129 <para>
130 <parameter>-Dsystem-lua=true</parameter>: This switch enables using the
131 system version of Lua. Omit this switch if you have not installed Lua,
132 but note that <application>meson</application> will download and install
133 it's own version.
134 </para>
135
136 </sect2>
137
138 <sect2 role="configuration">
139 <title>Configuring Wireplumber</title>
140
141 <sect3><title>Configuration Information</title>
142
143 <para>
144 In order for Wireplumber to be used by Pipewire, Wireplumber must be
145 configured to start when a desktop environment is started.
146 </para>
147
148 <para revision="systemd">
149 To configure Wireplumber to start when a desktop environment is
150 started, run the following commands as the &root; user to enable the
151 systemd user units:
152 </para>
153
154<screen role="root" revision="systemd"><userinput>systemctl enable --global pipewire.socket &amp;&amp;
155systemctl enable --global wireplumber</userinput></screen>
156
157 <para revision="sysv">
158 First, create a shell script that will start Wireplumber and Pipewire
159 in the correct order as the &root; user:
160 </para>
161
162<screen role="root" revision="sysv"><userinput>cat &gt; /usr/bin/pipewire-launcher.sh &lt;&lt; "EOF"
163<literal>#!/bin/sh
164# Begin /usr/bin/pipewire-launcher.sh
165
166# Start Pipewire first.
167exec /usr/bin/pipewire &amp;
168
169# Wait for a second for Pipewire to launch.
170sleep 1
171
172# Start Wireplumber now that Pipewire has been started.
173exec /usr/bin/wireplumber &amp;
174# End /usr/bin/pipewire-launcher.sh</literal>
175EOF</userinput></screen>
176
177 <para revision="sysv">
178 Next, make this shell script executable as the &root; user:
179 </para>
180
181<screen role="root" revision="sysv"><userinput>chmod +x /usr/bin/pipewire-launcher.sh</userinput></screen>
182
183 <para revision="sysv">
184 Finally, create an XDG Autostart file that will run
185 <command>/usr/bin/pipewire-launcher.sh</command> when a desktop
186 environment is started, as the &root; user:
187 </para>
188
189<screen role="root" revision="sysv"><userinput>cat &gt; /etc/xdg/autostart/pipewire.desktop &lt;&lt; "EOF"
190<literal>[Desktop Entry]
191Version=1.0
192Name=Pipewire
193Comment=Starts the Pipewire and Wireplumber daemons
194Exec=/usr/bin/pipewire-launcher.sh
195Terminal=false
196Type=Application</literal>
197EOF</userinput></screen>
198
199 <para>
200 Now that Wireplumber is configured to start when a desktop environment is
201 started, it is recommended that you log out of your session and log back
202 in again.
203 </para>
204
205 </sect3>
206 </sect2>
207
208 <sect2 role="content">
209 <title>Contents</title>
210
211 <segmentedlist>
212 <segtitle>Installed Programs</segtitle>
213 <segtitle>Installed Libraries</segtitle>
214 <segtitle>Installed Directories</segtitle>
215
216 <seglistitem>
217 <seg>
218 wireplumber,
219 wpctl, and
220 wpexec
221 </seg>
222 <seg>
223 libwireplumber-0.4.so
224 </seg>
225 <seg>
226 /usr/include/wireplumber-0.4,
227 /usr/lib/wireplumber-0.4, and
228 /usr/share/wireplumber
229 </seg>
230 </seglistitem>
231 </segmentedlist>
232
233 <variablelist>
234 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
235 <?dbfo list-presentation="list"?>
236 <?dbhtml list-presentation="table"?>
237
238 <varlistentry id="wireplumber-prog">
239 <term><command>wireplumber</command></term>
240 <listitem>
241 <para>
242 is a session and policy manager for Pipewire
243 </para>
244 <indexterm zone="wireplumber wireplumber-prog">
245 <primary sortas="b-wireplumber">wireplumber</primary>
246 </indexterm>
247 </listitem>
248 </varlistentry>
249
250 <varlistentry id="wpctl">
251 <term><command>wpctl</command></term>
252 <listitem>
253 <para>
254 controls and queries information from Wireplumber
255 </para>
256 <indexterm zone="wireplumber wpctl">
257 <primary sortas="b-wpctl">wpctl</primary>
258 </indexterm>
259 </listitem>
260 </varlistentry>
261
262 <varlistentry id="wpexec">
263 <term><command>wpexec</command></term>
264 <listitem>
265 <para>
266 executes Wireplumber scripts, which are often written in Lua
267 </para>
268 <indexterm zone="wireplumber wpexec">
269 <primary sortas="b-wpexec">wpexec</primary>
270 </indexterm>
271 </listitem>
272 </varlistentry>
273
274 <varlistentry id="libwireplumber">
275 <term><filename class="libraryfile">libwireplumber-0.4.so</filename></term>
276 <listitem>
277 <para>
278 contains functions that allow other programs to control Wireplumber
279 </para>
280 <indexterm zone="wireplumber libwireplumber">
281 <primary sortas="c-libwireplumber">libwireplumber-0.4.so</primary>
282 </indexterm>
283 </listitem>
284 </varlistentry>
285 </variablelist>
286 </sect2>
287</sect1>
Note: See TracBrowser for help on using the repository browser.