Wireplumber-0.5.8

Introduksjon til Wireplumber

Wireplumber pakken inneholder en økt og regel behandler for Pipewire.

Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.3 plattform.

Pakkeinformasjon

Wireplumber Avhengigheter

Påkrevd

elogind-255.17, GLib-2.82.5, og pipewire-1.2.7

Anbefalt

Valgfri

Doxygen-1.13.2, lxml-5.3.1, sphinx-8.2.1, sphinx_rtd_theme-3.0.2, og Breathe

Installasjon av Wireplumber

Installer Wireplumber ved å kjøre følgende kommandoer:

mkdir build &&
cd    build &&

meson setup --prefix=/usr --buildtype=release -D system-lua=true .. &&
ninja

For å teste resultatene, utsted: ninja test.

Nå, som root bruker:

ninja install

Til slutt, gi nytt navn til dokumentasjonsmappen til en versjonert katalog som root bruker:

mv -v /usr/share/doc/wireplumber{,-0.5.8}

Parameterforklaringer

--buildtype=release: Spesifiser en byggetype egnet for stabile utgivelser av pakken, som standard kan produsere uoptimaliserte binærfiler.

-D system-lua=true: Denne bryteren aktiverer bruk av systemversjonen av Lua. Utelat denne bryteren hvis du ikke har installert Lua, men merk det meson vil laste ned og installere sin egen versjon.

Konfigurere Wireplumber

Konfigurasjonsinformasjon

For at Wireplumber skal brukes av Pipewire, Wireplumber og Pipewire må konfigureres til å starte når et skrivebordsmiljø blir startet.

Pipewire tilbyr nå sin egen Pulseaudio serverimplementering, som forårsaker kjøretidskonflikter med serveren levert av Pulseaudio selv. Dette viser seg vanligvis ved at applikasjoner henger eller ikke fungerer når du prøver å spille av eller ta opp lyd og video. For det første, forebygge Pulsaudio fra å starte sin egen serverimplementering ved å kjøre følgende kommandoer som root bruker:

rm -vf /etc/xdg/autostart/pulseaudio.desktop         &&
rm -vf /etc/xdg/Xwayland-session.d/00-pulseaudio-x11 &&
sed -e '$a autospawn = no' -i /etc/pulse/client.conf

Neste lag et skallskript som vil starte Wireplumber og Pipewire i riktig rekkefølge som root bruker:

cat > /usr/bin/pipewire-launcher.sh << "EOF"
#!/bin/sh
# Begin /usr/bin/pipewire-launcher.sh

# First, kill any previous instances of pipewire, wireplumber, or pipewire-pulse
# that are running. Multiple instances of the daemon can not be run at the same
# time, and this helps prevent possible errors if a user logs out or logs in
# too fast, and restores audio if Pipewire hangs and needs to be reset.

pkill -u ${USER} -fx /usr/bin/pipewire-pulse
pkill -u ${USER} -fx /usr/bin/wireplumber
pkill -u ${USER} -fx /usr/bin/pipewire

# Start Pipewire first.
exec /usr/bin/pipewire &

# Next, we need to wait until pipewire is up before starting wireplumber.
# This prevents a possible race condition where pipewire takes too long
# to start, as some users have run into.
while [ $(pgrep -f /usr/bin/pipewire) = "" ]; do
   sleep 1
done

# Start Wireplumber now that Pipewire has been started.
exec /usr/bin/wireplumber &

# Start the Pulseaudio server included with Pipewire.
exec /usr/bin/pipewire-pulse &

# End /usr/bin/pipewire-launcher.sh
EOF

Deretter gjør du dette skallskriptet kjørbart som root bruker:

chmod +x /usr/bin/pipewire-launcher.sh

Til slutt oppretter du en XDG Autostart fil som vil kjøre /usr/bin/pipewire-launcher.sh når et skrivebordsmiljø blir startet, som root bruker:

cat > /etc/xdg/autostart/pipewire.desktop << "EOF"
[Desktop Entry]
Version=1.0
Name=Pipewire
Comment=Starts the Pipewire and Wireplumber daemons
Exec=/usr/bin/pipewire-launcher.sh
Terminal=false
Type=Application
EOF

Nå som Wireplumber er konfigurert til å starte når et skrivebordsmiljø blir startet, anbefales det at du logger ut av økten og logger tilbake inn igjen.

Innhold

Installerte Programmer: wireplumber, wpctl, og wpexec
Installerte Biblioteker: libwireplumber-0.5.so
Installerte Mapper: /usr/include/wireplumber-0.5, /usr/lib/wireplumber-0.5, /usr/share/wireplumber, og /usr/share/doc/wireplumber-0.5.8

Korte Beskrivelser

wireplumber

er økt og regel behandler for Pipewire

wpctl

kontroller og spør etter informasjon fra Wireplumber

wpexec

utfører Wireplumber skript, som ofte er skrevet i Lua

libwireplumber-0.5.so

inneholder funksjoner som lar andre programmer styre Wireplumber