How to Install and Set Up PipeWire on Debian
Step-by-step instructions for installing and configuring PipeWire on Debian for camera, microphone, screen capture, and video call use.
Before you start
PipeWire runs locally as a user service. You do not need a separate server or remote service to use it. On Debian, the setup generally involves installing the PipeWire packages that replace PulseAudio and, where appropriate, the pieces that connect to camera and video call tools.
Confirm that your user account can restart user services and that you have permission to install packages, usually through sudo. Check which Debian release you are on because package names and defaults can differ between Debian 11, 12, and newer releases.
Step-by-step instructions
1) Refresh the package list so you are working with the latest available package information.
sudo apt update
2) Install PipeWire and the PulseAudio-compatible layer. This keeps applications that expect PulseAudio working while routing audio through PipeWire.
sudo apt install pipewire pipewire-pulse wireplumber
3) Enable the PipeWire user services for your account. These commands activate the PipeWire socket and the WirePlumber session manager without requiring a reboot.
systemctl --user enable --now pipewire pipewire-pulse wireplumber
4) If you want PipeWire to handle camera and screen capture through the libcamera or PipeWire camera path, install the relevant PipeWire development and integration packages only when your applications require them. Do not add extra packages unless a specific tool asks for them.
5) Restart the user session or log out and back in if applications still connect to the previous audio server. In many desktop environments, the services start automatically after being enabled.
6) Reversible changes: you can stop the user services with systemctl --user disable --now pipewire pipewire-pulse wireplumber and remove the packages using apt remove if you need to return to the previous setup. Keep a note of the packages you replaced, especially if you removed PulseAudio components.
Check the output
Verify that the PipeWire service is running for your user.
systemctl --user status pipewire pipewire-pulse wireplumber
Check that PipeWire is selected as the audio server in a running audio application. In a video call or recording tool, choose the available microphone and speaker devices and test that sound is captured and played. For camera use, open an application that lists video sources and confirm that the expected camera appears.
PipeWire supports many common audio and video formats, but the formats available for a camera depend on the camera driver and the application, not on PipeWire alone. If a camera does not appear, treat that as a device or integration issue rather than assuming PipeWire has failed.
Common problems and next steps
If no sound devices appear, confirm that pipewire-pulse and wireplumber are installed and enabled, then restart the user services or log out and back in.
If a camera is not visible in browsers or call apps, check whether the application uses PipeWire directly or relies on another video stack. Also verify that the camera is recognized by the system and that browser or app permissions allow camera access.
If audio is choppy or missing in video calls, test the same microphone and speaker combination in a simple local recording tool. That helps separate an application configuration problem from a PipeWire routing problem.
For Debian-specific package differences, check the package descriptions available through apt for your release. The exact package set can vary, and Debian 11 may require additional compatibility packages that newer releases include by default.