PipeWire
PipeWire / WirePlumber audio stack — troubleshooting and management. For the DSP chain see
system/easyeffects.
Restart audio stack
Fixes most audio glitches (crackling, lost output, HDMI no sound):
Restart everything:
systemctl --user restart pipewire pipewire-pulse wireplumberRestart only WirePlumber:
systemctl --user restart wireplumber
Inspect
List sinks (outputs):
pactl list sinks shortList sources (inputs/mics):
pactl list sources shortFull sink details (sample rate, format, active port):
pactl list sinksPipeWire graph status:
wpctl statusPipeWire node info by ID:
pw-cli info <node-id>Dump full PipeWire graph (pipe to grep):
pw-dump | grep -A20 "HDMI4"
HDMI audio
HDMI audio sink name pattern: alsa_output.pci-0000_c4_00.1.HiFi__HDMI4__sink
Set volume on HDMI sink:
pactl set-sink-volume alsa_output.pci-0000_c4_00.1.HiFi__HDMI4__sink 50%Test HDMI audio:
paplay --device=alsa_output.pci-0000_c4_00.1.HiFi__HDMI4__sink /usr/share/sounds/alsa/Front_Center.wavSet active card profile:
pactl set-card-profile alsa_card.pci-0000_c4_00.1 HiFi
Microphone
Check mute state:
pactl get-source-mute @DEFAULT_SOURCE@List sources with mute:
pactl list sources | grep -A10 "alsa_input" | grep "Mute:"
Logs
WirePlumber logs (recent):
journalctl --user -u wireplumber -n 50 --no-pagerPipeWire logs:
journalctl --user -u pipewire -n 50 --no-pager
Audio sink switcher
- Waybar
custom/audio-sinkshows current sink - Switch sink via:
~/.config/waybar/scripts/audio-sink.sh - Right-click volume in waybar → pavucontrol for full control