|
| 1 | +# PipeWire |
| 2 | + |
| 3 | +To use PipeWire, install the `pipewire` package. |
| 4 | + |
| 5 | +[pipewire(1)](https://man.voidlinux.org/pipewire.1) should be started as a user. |
| 6 | +Use the autostarting mechanism of your desktop environment or |
| 7 | +[startx](../graphical-session/xorg.md#startx). |
| 8 | + |
| 9 | +## PulseAudio replacement |
| 10 | + |
| 11 | +PipeWire can start a PulseAudio server. While it's possible to modify |
| 12 | +[pipewire.conf(5)](https://man.voidlinux.org/pipewire.conf.5) for auto-starting |
| 13 | +the PulseAudio server, it's recommended to start it from the same place where |
| 14 | +you start PipeWire by executing `pipewire-pulse`. This keeps the PipeWire |
| 15 | +configuration file unmodified for smoother future upgrades. |
| 16 | + |
| 17 | +Before starting `pipewire-pulse`, make sure that the PulseAudio service is |
| 18 | +[disabled](../services/index.md#disabling-services) and that no other PulseAudio |
| 19 | +server instance is running. |
| 20 | + |
| 21 | +To check if the replacement is working correctly, use |
| 22 | +[pactl(1)](https://man.voidlinux.org/pactl.1) (provided by the |
| 23 | +`pulseaudio-utils` package): |
| 24 | + |
| 25 | +``` |
| 26 | +$ pactl info |
| 27 | +
|
| 28 | +[...] |
| 29 | +Server Name: PulseAudio (on PipeWire 0.3.18) |
| 30 | +[...] |
| 31 | +``` |
| 32 | + |
| 33 | +## Bluetooth audio |
| 34 | + |
| 35 | +For bluetooth audio to work, install the `libspa-bluetooth` package. |
| 36 | + |
| 37 | +## ALSA integration |
| 38 | + |
| 39 | +Install `alsa-pipewire`, then enable the PipeWire ALSA device and make it the |
| 40 | +default: |
| 41 | + |
| 42 | +``` |
| 43 | +# mkdir -p /etc/alsa/conf.d |
| 44 | +# ln -s /usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d |
| 45 | +# ln -s /usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d |
| 46 | +``` |
| 47 | + |
| 48 | +## JACK replacement |
| 49 | + |
| 50 | +Install `libjack-pipewire`. |
| 51 | + |
| 52 | +Use [pw-jack(1)](https://man.voidlinux.org/pw-jack.1) to launch JACK clients |
| 53 | +manually: |
| 54 | + |
| 55 | +``` |
| 56 | +$ pw-jack <application> |
| 57 | +``` |
| 58 | + |
| 59 | +Alternatively, override the library provided by `libjack` (see |
| 60 | +[ld.so(8)](https://man.voidlinux.org/ld.so.8)). The following approach will work |
| 61 | +on glibc-based systems: |
| 62 | + |
| 63 | +``` |
| 64 | +# echo "/usr/lib/pipewire-0.3/jack" > /etc/ld.so.conf.d/pipewire-jack.conf |
| 65 | +# ldconfig |
| 66 | +``` |
0 commit comments