Skip to main content

Linux · Display & Sound

Manage audio devices, volume, and the sound server

Most current distros (Fedora, Ubuntu 22.10+, recent Arch installs) now default to PipeWire as the audio (and video) server, usually with the pipewire-pulse compatibility layer so PulseAudio-based apps keep working unmodified; older systems still run PulseAudio directly.

What you should know

  • GUI volume/device control is the same either way — the speaker icon in the system tray, or Settings > Sound in GNOME/KDE.
  • Check which sound server is active with `pactl info` — the "Server Name" line reports "PulseAudio (on PipeWire ...)" if PipeWire is running the compatibility layer.
  • Install/switch on Ubuntu/Debian: `sudo apt install pipewire-audio pipewire-pulse`; Fedora ships PipeWire by default; Arch: `sudo pacman -S pipewire pipewire-pulse wireplumber`.
  • `pavucontrol` (PulseAudio Volume Control) works against both PipeWire and PulseAudio and is the most reliable place to fix per-app output routing and input levels.

Why it matters

Audio routing is one of the more fragmented parts of the Linux desktop stack — knowing whether you're on PipeWire or PulseAudio (and that WirePlumber is PipeWire's session manager) saves a lot of time chasing fixes written for the wrong stack.

Best practices

  • Use `pavucontrol` for per-application volume and device routing rather than hunting through each app's own settings.
  • If migrating an older system to PipeWire, remove `pulseaudio` and `pulseaudio-utils` packages rather than running both stacks side by side.
  • For pro-audio/low-latency work, PipeWire's JACK compatibility layer (`pipewire-jack`) usually removes the need for a separate JACK install.

Common problems and fixes

No sound after a fresh install or after suspending
Restart the audio stack with `systemctl --user restart pipewire pipewire-pulse wireplumber` (or `pulseaudio -k` on PulseAudio systems, which auto-restarts it).
Bluetooth headphones connect but no audio
Confirm the Bluetooth A2DP profile is selected in `pavucontrol`'s Configuration tab, and that `pipewire-pulse`/`pulseaudio-module-bluetooth` is installed.

Tips and tricks

  • `wpctl status` gives a quick tree view of every PipeWire audio input/output and which app is bound to which device.

Frequently asked questions

Should I switch from PulseAudio to PipeWire manually?

Only if your distro hasn't already — most mainstream distros migrated by default in 2022–2023. If audio works fine today, there's no urgent need to switch it yourself.