I'm using XFCE. The problem is simple to describe. The expected behavior of the audio is that upon reboot (or powering off and then on again) it remembers the volume level you assigned, but this doesn't happen. Instead, upon rebooting the system it resets to a value close to 50%. I'm not sure, but I think I'm using Pulse Audio (I have a mixer called PavuControl). I have two audio outputs, a headphone jack as default, and my monitor's built-in speakers, which are connected via DisplayPort, but I never use them. Is there a solution for this? So far, it's only happened to me on Artix.
Hello,
I have been using alsa only for several years.
I removed all pulse packets except libpulse and libcanberra.
I use alsa and the nice and very practical qastools mixer on different pc:
https://forum.artixlinux.org/index.php/topic,4318.msg27848.html#msg27848
Note: I don't play games and don't use wine or steam.
But I have sound in all my apps.
It doesn't really address his question, but FWIW, it is also what I do. Layer upon layer of complexity doesn't suit me. I try to conform to the principles of KISS.
I had exactly the same problem with PulseAudio, and since I've been using Alsa and QasTools, it's been all good.
And I completely agree with the kiss principle; as long as I can handle it.
Tintin, my regards, you're an eminence to me. It's a pleasure interacting with you.
So, what should I do next? I don't care whether I use Alsa or Pulse Audio. I just want my audio to work and be able to manage it from the panel plugin. When I restart, it saves the volume level I assign. I don't understand much about these sound software programs.
I am very honored and the pleasure is all mine, as I am just a humble Artix Linux user.
There's no risk in trying, as the operation is reversible.
First, you need to search for all packages containing "pulse":
pacman -Ss pulse
For me, it looks like this:
pacman -Ss pulse
world/gtk-vnc 1.5.0-1
VNC viewer widget for GTK
world/libcanberra 1:0.30+r2+gc0620e4-4 [installed]
A small and lightweight implementation of the XDG Sound Theme Specification
world/libpulse 17.0+r43+g3e2bb8a1e-1 [installed]
A featureful, general-purpose sound server (client library)
world/paprefs 1.2-3
Configuration dialog for PulseAudio
world/pasystray 0.8.2-2.1
PulseAudio system tray (a replacement for padevchooser)
world/pavucontrol 1:6.1-1
PulseAudio Volume Control
world/pipewire-pulse 1:1.4.2-1
Low-latency audio/video router and processor - PulseAudio replacement
world/pipewire-pulse-dinit 20240528-1 (turnstile-experimental)
dinit user service script for pipewire-pulse
world/pipewire-pulse-openrc 20250308-2 (openrc-world)
openrc user service script for pipewire
world/plasma-pa 6.3.5-1 (plasma)
Plasma applet for audio volume management using PulseAudio
world/projectm-pulseaudio 3.1.12-5
Music visualizer which uses 3D accelerated iterative image based rendering
(pulseaudio)
world/pulse-native-provider 1:1.4.2-1
PulseAudio sound server (default provider)
world/pulseaudio 17.0+r43+g3e2bb8a1e-1
A featureful, general-purpose sound server
world/pulseaudio-alsa 1:1.2.12-4
ALSA Configuration for PulseAudio
world/pulseaudio-bluetooth 17.0+r43+g3e2bb8a1e-1
Bluetooth support for PulseAudio
world/pulseaudio-equalizer 17.0+r43+g3e2bb8a1e-1
Graphical equalizer for PulseAudio
world/pulseaudio-jack 17.0+r43+g3e2bb8a1e-1
Jack support for PulseAudio
world/pulseaudio-lirc 17.0+r43+g3e2bb8a1e-1
IR (lirc) support for PulseAudio
world/pulseaudio-qt 1.7.0-1
Qt bindings for libpulse
world/pulseaudio-rtp 17.0+r43+g3e2bb8a1e-1
RTP and RAOP support for PulseAudio
world/pulseaudio-zeroconf 17.0+r43+g3e2bb8a1e-1
Zeroconf support for PulseAudio
world/pulsemixer 1.5.1-7
CLI and curses mixer for pulseaudio
world/qemu-audio-pa 10.0.0-1
QEMU PulseAudio audio driver
galaxy/pavucontrol-qt 2.2.0-1 (lxqt)
A Pulseaudio mixer in Qt (port of pavucontrol)
galaxy/xfce4-pulseaudio-plugin 0.5.1-1 (xfce4-goodies)
Pulseaudio plugin for the Xfce4 panel
omniverse/apulse 0.1.13-1
PulseAudio emulation for ALSA
omniverse/mpv-light 1:0.40.0-2
Free, versatile, command line media player, without alsa, pulse and pipewire
dependencies
omniverse/pamixer 1.6-3
Pulseaudio command-line mixer like amixer
omniverse/pasystray-qt 0.8.2-1.1
PulseAudio system tray (a replacement for padevchooser)
omniverse/pulseaudio-dummy 0.2-1
You may have noticed that I only kept the libcanberra and libpulse packages.
I uninstalled the other packages like pavucontrol, pulseaudio, etc.
Then I installed the qastools:
sudo pacman -Sy qastools
Then, to list the sound cards:
cat /proc/asound/cards
On one of my PCs it looks like this:
cat /proc/asound/cards
0 [HDMI ]: HDA-Intel - HDA ATI HDMI
HDA ATI HDMI at 0xfce60000 irq 96
1 [Generic ]: HDA-Intel - HD-Audio Generic
HD-Audio Generic at 0xfc900000 irq 98
To set the sound card to use by default:
your_text_editor ~/.asoundrc
or
mousepad ~/.asoundrc
or
nano ~/.asoundrc
And in my case, I specified this in this file:
defaults.pcm.card 1
defaults.ctl.card 1
Finally you have to restart or
restart the alsasound service (command for openrc):
sudo rc-service alsasound restart
To test sound after reboot:
speaker-test
**
If you're not satisfied with the results and want to revert back:
- Reinstall the packages you removed.
- Uninstall qastools.
- Reboot your system.
your_text_editor ~/.asoundrc
Good tip
I was thinking about this on the subway ride to work today and I am not sure what exactly is the problem. Now, I never turn off my workstation, but if I did, I would want it to boot back up is a SANE state, which is often not the last state.
I have an alarm clock on my workstation which looks something like this
3 30 05 * * * /usr/bin/amixer -c 0 set Master playback 100% >> /dev/null
4 31 05 * * * /usr/bin/mplayer /home/ruben/docs/Rav\ Shorr\ Shium/*mp3 >> /dev /null
5 33 05 * * * /usr/bin/killall mplayer >> /dev/null
6 33 05 * * * /usr/bin/amixer -c 0 set Master playback 70% >> /dev/null
The point is it set my sound to 70%.
If you want it to remember the previous setting, and mind you there are about 10 things that can set sound volume, including the hot keys on the hardware and the keyboard, and all the individual applications that play sound including browsers and media players, video games, etc etc how would one expect the system to remember the last settings on a reboot?
Maybe :
Install alsa-utils-<your_init>
sudo alsactl store
This may not be the right answer, but I found these links interesting:
https://www.geeksforgeeks.org/alsactl-command-in-linux-with-examples/
https://forum.artixlinux.org/index.php/topic,8036.15.html