Sound not working using internal speakers on laptop

On initial installation of Zorin, sound worked on my laptop. While streaming a movie, sound stopped working. Installed PulseAudio Volume Control and it shows the meter moving during playback yet nothing from the speakers.

Yesterday, I ran the command systemctl --user restart pulseaudio and the sound worked. However, on bootup today, the sound isn't working again even after trying the command. I am on XOrg right now.

Any help is greatly appreciated.

And when You make a Reboot? Does this help? Or when You try pulseaudio -k and then pulseaudio -D does this help?

Should I do both or try one at a time?

When I entered pulseaudio -k, nothing appeared to happen. Then I entered pulseaudio -d and got "Failed to parse command line."

Both, yes. First type pulseaudio -k (with a small k) and then directly pulseaudio -D (with a capital D).

You can try also sudo systemctl status pulseaudio to see if it's running or not. When it's not, there might be some error messages detailing why which can be useful to diagnose the problem.

1 Like

Did the pulseaudio -k.
When I did the pulseaudio -D, it said "Daemon startup failed."

When I typed in that command, it said "Unit pulseaudio.service could not be found."

Please type in the Terminal apt list pulseaudio and look if it is marked with [installed]

Will do this but according to what I can find, Zorin 17.3 uses Pipewire, not pulseaudio. Pipewire is enabled on the system.

In Zorin 17.3 pulseaudio is the default audio server, in Zorin 18 pipewire.

1 Like

If it is uninstalled: Did You uninstall it in the Past?

I've discovered through alsamixer that the speaker volume is controlled through the headphone volume control. Looking for a fix for that.

Found a workaround to keep the sound working until I can get the proper fix. I created a file that will store alsamixer's settings and reload on startup.

Laptop speaker volume still controlled on the headphones meter.

Note. If you change alsamixer settings, save them using:

sudo alsactl store

I wonder if you did that, if you are needing to reinstate settings on startup.

1 Like

Thanks for your reply.

I found the following online:

"If the sudo alsactl store command is not saving your alsamixer settings, you can use a custom file path to store the configuration and ensure it is restored at boot. First, save the current settings to a user-specific file using the command sudo alsactl --file ~/.config/asound.state store. This creates a asound.state file in your home directory's .config folder.

To restore these settings automatically on each boot, create a .desktop file in the ~/.config/autostart/ directory. Use a text editor like nano to create the file ~/.config/autostart/alsarestore.desktop and add the following content:
[Desktop Entry]
Type=Application
Terminal=false
Name=alsarestore
Exec=alsactl --file ~/.config/asound.state restore"

Problem is, alsamixer still uses the headphone volume bar to control the laptop speakers. I can't get the speaker volume to work.

Also, on reboot, I have to go back into alsamixer to increase the volume on the master volume control bar. The file I created and save every time does not save the master volume setting.

I've updated to Zorin 18 but still have the above issue. Is there any solution to have the sound work on speaker instead of headphones?

If not, can someone tell me how to have the alsamixer settings reload on startup so I don't have to go in every time I boot up? The above method doesn't work.

To save a good alsamixer setting use:

sudo alsactl store