Sound: Limit max volume without adjusting current volume

Is there a way to limit an application’s maximum volume without adjusting it’s current volume?
For context, I need to boost some contacts on my Discord in order to hear what they say in general, but every now and then there’s an insane volume spike. I would like to limit how loud the application can go so I don’t destroy my ears, but when I lower the system’s/contact’s/application’s volume it becomes too soft to hear 99% of what is said.
I want to keep the current volume settings but set an upper limit of how loud it can go.

Well, You’ll never be able to set limits for individual users unless you file a feature request in Discord itself, but you seem to be in need of PulseEffects, more specifically the limiter option.

pamac install pulseeffects


Thanks! Will give it a go and report how it works out.

every now and then there’s an insane volume spike

Is this due to Discord trying to adjust the audio level automatically?

You might have better control of audio levels if you turn off the 'Auto Gain Control` in Discord and adjust audio level manually

Audio processing to maintain simialr audio levels for different callers would generally require a Compressor to amplify only lower levels of audio, then a Limiter to cap the maximum level of audio

You should be aware before installing Pulseeffects that the package now requires Pipewire instead of PulseAudio. The package manager would also ask to install Pipewire and remove PulseAudio

If you prefer to continue using PulseAudio, you can install pulseffects-legacy (or viper4linux-gui or jdsp4linux-gui from AUR)


Thanks for the reply.

I don’t think it’s the auto gain control, since the spikes on the Discord servers I’m on are the result of user input just being outrages from time to time.

I ran into the Pipewire dependency warnings, so I’ll just give the bullets for anyone going through the same process:

  • Installed Pulse Effects through Add/Remove Software by removing the Manjaro Pulse meta package.
  • On restart, Pipewire didn’t detect my audio devices, so to revert I had to remove Pipewire and reinstall the Manjaro Pulse meta package.
  • On restart, I was dropped into tty, since the gdm packages appeared to be missing.
  • Reinstalled gdm by running sudo pacman -S gnome, and selecting 7) gdm.
  • Installed pulseeffects-legacy through Add/Remove Software.

Since I am happy with pulseaudio, I thought it better to revert than troubleshoot/setup Pipewire. I’m still relatively new to Linux, but don’t mind troubleshooting stuff in order to learn. Breaking my desktop environment is a great motivator XD

I’ve enabled the limiter. Hopefully it solves my problem.

1 Like

Just to give an update,

I’ve been running into issues with pulseeffects-legacy (not sure if they’re all related to pulseeffects though):

Here’s a simple fix I found which makes the whole process quite painless to execute:

  • Install the manjaro-pipewire meta package (which removes and replaces all the conflicting modules)
  • Install pulseeffects 5.*

After a restart, everything works as intended.

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.