Pipewire as default audio server

Lol, thanks for the compliment! Just a few corrections… i was talking about using an audio splitter and xfowarding the audio output and recording. The Y splitter gives you no lag as its straight to the amp. At any rate! :slight_smile:

1 Like

thanks, that’s helped me.

Hi,
I followed the advice of anon91923227 but I could not get wireplumber to work. My volume selector does not find any output now.
Here is the exact procedure I followed:

# install dependencies
sudo swupd bundle-add kde-frameworks5-dev   (déjà là)
sudo swupd bundle-add devpkg-pipewire  (déjà là)
sudo swupd bundle-add dev-utils  (déjà là)  (pour dépendance à “meson”)
sudo swupd bundle-add devpkg-glib (déjà là)  (pour dépendance à glib)
sudo swupd bundle-add devpkg-systemd ?  (déjà là)  (pour dépendance à systemd)
pip install sphinx sphinx_rtd_theme breathe lxml
# see https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Running/#autospawning
mkdir -p ~/.config/pulse
echo 'autospawn=no'>>~/.config/pulse/client.conf  
# see https://github.com/clearlinux/distribution/issues/2589
cd /tmp
git clone https://gitlab.freedesktop.org/pipewire/wireplumber 
cd wireplumber 
meson setup --prefix=/usr/local --buildtype=release build/
meson compile -C build 
sudo meson install -C build
# finish up 
systemctl --user disable pulseaudio 
systemctl --user enable pipewire{-pulse,} 
systemctl --user enable wireplumber 
#ensure /usr/local/lib64 is setup as per man stateless
echo "/usr/local/lib64" | sudo tee -a /etc/ld.so.conf sudo ldconfig
export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib64 
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/local/lib64/pkgconfig

and reboot

meson setup --prefix=/usr/local --buildtype=release build/ was not able to find libelogind and give me :

Th****e Meson build system
Version: 1.0.0
Source dir: /tmp/wireplumber
Build dir: /tmp/wireplumber/build
Build type: native build
Project name: wireplumber
Project version: 0.4.13
C compiler for the host machine: gcc (gcc 12.2.1 “gcc (Clear Linux OS for Intel Architecture) 12.2.1 20230216 releases/gcc-12.2.0-481-g86caa970dd”)
C linker for the host machine: gcc ld.bfd 2.40.0
Host machine cpu family: x86_64
Host machine cpu: x86_64
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Run-time dependency glib-2.0 found: YES 2.74.5
Run-time dependency gobject-2.0 found: YES 2.74.5
Run-time dependency gmodule-2.0 found: YES 2.74.5
Run-time dependency gio-2.0 found: YES 2.74.5
Run-time dependency gio-unix-2.0 found: YES 2.74.5
Run-time dependency libspa-0.2 found: YES 0.2
Run-time dependency libpipewire-0.3 found: YES 0.3.66
Library m found: YES
Run-time dependency threads found: YES
Run-time dependency intl found: YES
Downloading lua source from https://www.lua.org/ftp/lua-5.4.4.tar.gz
Download size: 360876
Downloading: …
Downloading lua patch from https://wrapdb.mesonbuild.com/v2/lua_5.4.4-1/get_patch
Download size: 2306
Downloading: …

Executing subproject lua
lua| Project name: lua-5.4
lua| Project version: 5.4.4
lua| C compiler for the host machine: gcc (gcc 12.2.1 “gcc (Clear Linux OS for Intel Architecture) 12.2.1 20230216 releases/gcc-12.2.0-481-g86caa970dd”)
lua| C linker for the host machine: gcc ld.bfd 2.40.0
lua| Library m found: YES
lua| Build targets in project: 3
lua| Subproject lua finished.

Run-time dependency systemd found: YES 252
Run-time dependency libsystemd found: YES 252
Found CMake: /usr/bin/cmake (3.25.2)
Run-time dependency libelogind found: NO (tried pkgconfig and cmake)
Compiler for C supports arguments -fvisibility=hidden: YES Compiler for C supports arguments -Wsuggest-attribute=format: YES Compiler for C supports arguments -Wsign-compare: YES Compiler for C supports arguments -Wpointer-arith: YES Compiler for C supports arguments -Wpointer-sign: YES Compiler for C supports arguments -Wformat: YES Compiler for C supports arguments -Wformat-security: YES Compiler for C supports arguments -Wimplicit-fallthrough: YES Compiler for C supports arguments -Wmissing-braces: YES Compiler for C supports arguments -Wtype-limits: YES Compiler for C supports arguments -Wvariadic-macros: YES Compiler for C supports arguments -Wno-missing-field-initializers: YES Compiler for C supports arguments -Wno-unused-parameter: YES Compiler for C supports arguments -Wno-pedantic: YES Compiler for C supports arguments -Wold-style-declaration: YES Compiler for C supports arguments -Wunused-result: YES Program glib-mkenums found: YES (/usr/bin/glib-mkenums)
Program glib-mkenums found: YES (/usr/bin/glib-mkenums)
Configuring wpversion.h using configuration
Program python3 (sphinx, sphinx_rtd_theme, breathe, sphinx.ext.graphviz) found: YES (/media/DATA/Python/SmartPython/shims/python3) modules: sphinx, sphinx_rtd_theme, breathe, sphinx.ext.graphviz
Program python3 (lxml) found: YES (/media/DATA/Python/SmartPython/shims/python3) modules: lxml
Program doxygen found: YES 1.9.5 (/usr/bin/doxygen)
Program sphinx-build found: YES 5.3.0 (/media/DATA/Python/SmartPython/shims/sphinx-build)
Program g-ir-scanner found: YES (/usr/bin/g-ir-scanner)
Configuring Doxyfile-wp using configuration
Configuring conf.py using configuration
Run-time dependency gobject-introspection-1.0 found: YES 1.74.0
Dependency gobject-introspection-1.0 found: YES 1.74.0
Program g-ir-scanner found: YES (/usr/bin/g-ir-scanner)
Dependency gobject-introspection-1.0 found: YES 1.74.0
Program g-ir-compiler found: YES (/usr/bin/g-ir-compiler)
Program gdbus-codegen found: YES (/usr/bin/gdbus-codegen)
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Program glib-mkenums found: YES (/usr/bin/glib-mkenums)
Program glib-mkenums found: YES (/usr/bin/glib-mkenums)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Program glib-compile-resources found: YES (/usr/bin/glib-compile-resources)
Configuring wireplumber.service using configuration
Configuring wireplumber@.service using configuration
Program msgfmt found: YES (/usr/bin/msgfmt)
Program msginit found: YES (/usr/bin/msginit)
Program msgmerge found: YES (/usr/bin/msgmerge)
Program xgettext found: YES (/usr/bin/xgettext)
Program valgrind found: YES (/usr/bin/valgrind)
Message: Using glib.supp: /usr/share/glib-2.0/valgrind/glib.supp
Configuring wp-uninstalled.sh.in using configuration
Build targets in project: 120

wireplumber 0.4.13

Lua version : 5.4.4 (built-in)
systemd conf data : YES
libsystemd : YES
libelogind : NO

For documentation
Python 3 Sphinx related modules: YES
Doxygen : YES
sphinx-build : YES

For introspection
Python 3 lxml module : YES
Doxygen : YES
g-ir-scanner : YES

Subprojects
lua : YES

User defined options
buildtype : release
prefix : /usr/local

Found ninja-1.11.1 at /usr/bin/ninja

journalctl give me :

févr. 23 12:17:52 clr-xxx systemd[676]: Starting dbus.socket…
févr. 23 12:17:52 clr-xxx systemd[676]: Listening on pipewire-pulse.socket.
févr. 23 12:17:52 clr-xxx systemd[676]: Listening on pipewire.socket.
févr. 23 12:17:52 clr-xxx systemd[676]: Listening on dbus.socket.
févr. 23 12:17:52 clr-xxx systemd[676]: Reached target sockets.target.
févr. 23 12:17:52 clr-xxx systemd[676]: Reached target basic.target.
févr. 23 12:17:52 clr-xxx systemd[1]: Started user@1000.service.
févr. 23 12:17:52 clr-xxx systemd[676]: Started pipewire.service.
févr. 23 12:17:52 clr-xxx systemd[676]: Started wireplumber.service.
févr. 23 12:17:52 clr-xxx systemd[1]: Started session-2.scope.
févr. 23 12:17:52 clr-xxx systemd[676]: Started pipewire-pulse.service.
févr. 23 12:17:52 clr-xxx systemd[676]: Reached target default.target.
févr. 23 12:17:52 clr-xxx systemd[676]: Startup finished in 58ms.
févr. 23 12:17:52 clr-xxx wireplumber[685]: /usr/local/bin/wireplumber: error while loading shared libraries: libwireplumber-0>
févr. 23 12:17:52 clr-xxx systemd[676]: wireplumber.service: Main process exited, code=exited, status=127/n/a
févr. 23 12:17:52 clr-xxx systemd[676]: wireplumber.service: Failed with result ‘exit-code’.

Do you have any idea how I can make pipwire and wireplumber work ?

Thanks

Anyone cares to share the status of PipeWire within CL as of today, late June 2023? Is it the default audio server or not? They say PipeWire is default for Gnome, though I am not sure this carries over to CL’s Gnome …

PipeWire is Coming soon!

Chris

2 Likes