Headphone output is far too loud

11,249

Solution 1

I experienced the same problem and I have written a post about the solution I found here. Basically what I did was this:

Open the file /etc/pulse/default.pa by typing the following in a terminal:

gksudo gedit /etc/pulse/default.pa

Change the line that says

load-module module-udev-detect

into

load-module module-udev-detect ignore_dB=1

Save and close the file.

Restart pulseaudio by typing the following in a terminal:

pulseaudio -k

Now open alsamixer:

alsamixer

Then lower the PCM volume to a decent level (I set mine to about 50 %). After doing this, changing the volume using the volume keys or volume slider won't reset the settings for PCM in alsamixer and will let you keep the lowest threshold of the volume a as low as you'd like. This will also keep the volume intervals smaller. The only negative effect is that you won't get as much sound out of your speakers without headphones unless you change back the PCM settings in alsamixer again.

I can't guarantee that this will work on your system, but it did work nicely on mine.

Solution 2

None of the solutions worked for me.

Here's what got my issue solved:

Edit /usr/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common

sudo vim /usr/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common

Change:

[Element PCM]
switch = mute
volume = merge
override-map.1 = all 
override-map.2 = all-left,all-right

To:

[Element PCM]
switch = mute
volume = ignore
volume-limit = 0.01
override-map.1 = all 
override-map.2 = all-left,all-right

Adjust volume-limit so that it fits your headphones volume range. In my case 0.01 was good.

Restart pulseaudio: pulseaudio -k or reboot sudo reboot

Full credits to this site. https://chrisjean.com/fix-for-usb-audio-is-too-loud-and-mutes-at-low-volume-in-ubuntu/

UPDATE:

The above solution overwrites all sound outputs. Hence, lowering your speakers volume limit too.

In order to lower only headphones max, set the above config into the [Option Analog Output:Headphones] section (same analog-output.conf.common).

Before:

[Option Analog Output:Headphones]
name = output-headphones
priority = 9

After:

[Option Analog Output:Headphones]
name = output-headphones
priority = 9
volume = ignore
volume-limit = 0.0

Solution 3

None of the above works for me even after searching solution for hours.

For me, I just had to change my sound card, and there, I find it exactly what I want.

The steps which I followed were:

  1. Type alsamixer in terminal and hit enter
  2. Press F6 and choose your sound card (I selected USB PnP Sound Device as I was using USB headphones) and press Enter
  3. Here you'll find the volume bars, adjust the one for your USB headphone so it is not too loud.

Solution 4

I solved this using sound settings in system settings. On the bottom of the screen, to the left of the "Test Speakers" button is a drop-down labeled "Profile:". I changed it to "High Fidelity Playback (A2DP Sink)" from "Headset Head Unit (HSP/HFP)". And now I can turn the volume down more.

Editing /usr/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common and /etc/pulse/default.pa did not work for me, as some other answers suggested. My problem remained after changing these configs.

The original problem I was experiencing: the sound in my bluetooth headphones would sound bearably quiet but then within a second of playing a video it would gradually increase. This was at the lowest system volume setting - one more keyboard button press to lower the volume would mute the headphones.

Solution 5

With most soundcards there are different mixer channels which amplify themselves. You can try to turn down the headphone output so that you can regulate the volume with the master mixer more accurate. It may be, that you have to install the pavucontrol package by typing sudo apt-get install pavucontrol. At least I hope that the gnome3-developers kept this options in their sound-setting tools ;)

Share:
11,249

Related videos on Youtube

Farran
Author by

Farran

Updated on September 18, 2022

Comments

  • Farran
    Farran over 1 year

    I am using Ubuntu 11.10 (Oneiric Ocelot), with a "Intel Corporation 82801G (ICH7 Family) AC'97 Audio Controller (rev 01)" sound card.

    When I plug headphones into the front headphone port, the sound that comes out is far too loud to listen to - and has to be turned down to about 5%. Anything above that is distorted and deafening.

    I have played around in Alsamixer, and whilst a decent level can be achieved (through changing three separate sliders), this is not ideal for changing the volume on my parents' computer. And using the standard volume control overrides all of that anyway.

  • robm
    robm over 6 years
    This made the volume keys/slider stop working on my system, but at least my earbuds are no longer at 11!
  • Bertware
    Bertware over 6 years
    Applying this to [Option Analog Output:Speakers] fixed a similar issue with the built-in speakers of an Asus laptop running Linux Mint (Cinnamon) 18.3, thanks! 0.01 seems to be a good value.
  • Citizen
    Citizen about 5 years
    I was reading up some docs and volume limit of 1.00 appears to the job as well. If I change it to .05 or .5 or any other value it doesn't seem to have any marginal effect.
  • simonzack
    simonzack over 4 years
    Many thanks! Worked really well on my Arch Linux. No need to use VolumeLock on Windows anymore.
  • DarkScrolls
    DarkScrolls almost 4 years
    In order to get the right sound output reference, check the Ubuntu sound settings. In my case, the headset is identified by "Speakers - USB Audio Device". Thus, I added volume-limit = 1 (that was personally a good value) to "Option Analog Output:Speakers".
  • user2616155
    user2616155 over 3 years
    Thanks @Nmath - good edit.
  • Eric Duminil
    Eric Duminil over 3 years
    Excellent, thanks. I changed my USB Headset Profile to "Digital Stereo Duplex (IEC958)" and the range is now perfect.
  • Sufian
    Sufian about 3 years
    This is exactly what helped me. The other solutions seem hackish to me, but not this one. Thanks!