Resuming your Ubuntu laptop or desktop from suspend or sleep mode only to discover that all audio output has vanished is an irritating issue for Linux users. You can see video playing and volume sliders responding, but internal speakers and headphones remain completely silent until you perform a full system reboot.
This post-suspend audio failure stems from power management discrepancies within the Linux kernel sound architecture. When Ubuntu enters deep sleep (S3 or modern standby), it cuts power to the PCI High Definition Audio controller (such as Realtek ALC or Intel SOF). Upon wake, the ALSA kernel codec driver may fail to re-initialise hardware registers, or the modern user-space audio server (PipeWire and WirePlumber on Ubuntu 22.04 LTS and 24.04 LTS) fails to reconnect its audio sinks. This tutorial walks you through practical commands to restore sound immediately without restarting your computer.
Method 1: Restart PipeWire and WirePlumber User Daemons
Modern Ubuntu installations utilize PipeWire alongside the WirePlumber session manager. If the audio daemon deadlocks upon resume, restarting the user services re-enumerates audio devices instantly.
- Open your terminal by pressing Ctrl + Alt + T.
- Restart the PipeWire and WirePlumber systemd user units (do not use sudo, as these run as user-level daemons):
systemctl --user restart pipewire pipewire-pulse wireplumber - Wait 3 to 5 seconds for the audio graph to rebind.
- Test playing an audio file or YouTube video to verify whether sound output returns.
Method 2: Reload ALSA Kernel Sound Modules via Terminal
If user-space daemon restarts do not revive the speakers, the underlying Advanced Linux Sound Architecture (ALSA) kernel module is stuck in a low-power D3cold state.
- In your terminal, force ALSA to reload sound card drivers:
sudo alsa force-reload - If the terminal reports that certain modules are busy, identify and reload the specific Intel or Realtek kernel sound module:
(On laptops using the Sound Open Firmware driver, replacesudo modprobe -r snd_hda_intel && sudo modprobe snd_hda_intelsnd_hda_intelwithsnd_sof_pci_intel_tglor the appropriate chip variant). - Unmute audio channels using the command-line mixer:
alsamixer - Ensure the Master and Speaker channels do not display
[MM](muted). Use the arrow keys to raise volume and press M to unmute if necessary. Press Esc to exit.
Method 3: Disable Audio Controller Power Management Sleep
The Linux kernel includes an aggressive audio power-saving parameter designed to power down the sound card after 1 second of inactivity. Disabling this sleep state prevents the hardware codec from freezing during suspend cycles.
- Create a custom modprobe configuration file:
sudo nano /etc/modprobe.d/audio-disable-powersave.conf - Add the following directives to disable audio chip power saving:
options snd_hda_intel power_save=0 power_save_controller=N - Press Ctrl + O followed by Enter to save the file, then press Ctrl + X to exit nano.
- Update your initial RAM filesystem so kernel boot parameters incorporate the fix:
sudo update-initramfs -u - Reboot your computer once to apply the change permanently.
Method 4: Automate Audio Service Restart on System Wake via systemd
If your specific motherboard hardware consistently loses sink bindings after sleep, create an automated systemd sleep hook to reset audio services automatically whenever Ubuntu resumes.
- Create a new systemd sleep hook script:
sudo nano /lib/systemd/system-sleep/restart-audio - Paste the following bash script into the file:
#!/bin/bash case $1/$2 in post/*) # Re-trigger audio controller reset after resume modprobe -r snd_hda_intel && modprobe snd_hda_intel ;; esac - Save the file and grant it executable permissions:
sudo chmod +x /lib/systemd/system-sleep/restart-audio - Now, whenever you open your laptop lid or wake Ubuntu from sleep, the operating system will automatically re-initialise the audio chip.
Ubuntu Post-Suspend Audio Troubleshooting Reference Table
Consult this reference guide to quickly pinpoint the source of post-suspend audio failures:
| Observed Audio State | Underlying Root Cause | Standard Remedial Command |
|---|---|---|
| Volume sliders move, but no sound plays | PipeWire/WirePlumber audio sinks deadlocked | systemctl –user restart pipewire wireplumber |
| Audio device vanishes completely from Settings | PCI sound chip stuck in D3cold power state | sudo modprobe -r snd_hda_intel && sudo modprobe snd_hda_intel |
| Sound is muted with [MM] in alsamixer | ALSA auto-mute daemon triggered by sleep event | alsamixer > press ‘M’ to unmute channels |
| Sound works on headphones, silent on speakers | Codec routing node switched to phantom jack | Install pavucontrol; re-select output port |
| Loud popping noise followed by total silence | Aggressive power_save=1 kernel timeout | Set power_save=0 in /etc/modprobe.d/ |
Managing Audio Ports in PulseAudio Volume Control (Pavucontrol)
In certain post-suspend events, Ubuntu’s sound server remains active but mistakenly routes audio to an unplugged phantom S/PDIF digital optical port or HDMI monitor. Install the graphical mixer by typing sudo apt install pavucontrol in terminal, launch PulseAudio Volume Control, navigate to the Output Devices tab, and verify that the Port dropdown is explicitly set to Speakers or Line Out rather than a disconnected output.