Debian – Sound is very low (almost not audible) from primary sound card, Debian 8, pulse audio

audiodebianpulseaudio

I am using PulseAudio to manage my sound on Debian 8 with i3wm.

Everything works properly, except the volume level on my on-board sound card. I can get sound out of it if I crank all settings to max (153% volume on both input and output on pavucontrol) and turn my speakers up pretty loud. The expected audio is played, just very quietly.

The setting is on "analog stereo output" everything is recognized and acts appropriately, except the volume.

I have a USB headset that works fine with the correct volume when selected in pavucontrol. When I boot into Windows, sound is fine.

This used to work properly with the correct volume, then stopped. My guess is that it was an update, but I don't use sound that often and am not able to correlate the events. There may also have been a reboot in there.

I have already killed the configs and restarted pulse. I've tried a few other troubleshooting steps, but none have yielded any results.

I can provided any data / logs requested, not sure what to look at at this point. I've played around in pacmd, but didn't find anything useful in there.

So I guess my question is, is there a baseline volume setting that is being set or calculated that is incorrect for my sound card that I can set statically? Or what in the world else could be happening here.

amixer output:

$›amixer                                                                                                                                     
Simple mixer control 'Master',0
  Capabilities: pvolume pswitch pswitch-joined
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 65536
  Mono:
  Front Left: Playback 103525 [158%] [on]
  Front Right: Playback 103525 [158%] [on]
Simple mixer control 'Capture',0
  Capabilities: cvolume cvolume-joined cswitch cswitch-joined
  Capture channels: Mono
  Limits: Capture 0 - 65536
  Mono: Capture 55141 [84%] [off]

alsamixer cap:

alsamixer settings
more alsamixer settings

Link to amixer -D hw:0 contents: http://pastebin.com/bB7ERZ13

Best Answer

On many modern sound cards, port mapping is fully configurable: you can, in software, configure each physical port to be either input or output, and whatever output or input you'd like. This, unfortunately, means that sometimes different OSes (and sometimes even releases of OSes) default to different mappings.

In short: Windows is using different port than Linux. The very low volume audio you're hearing is bleed-through from the port Linux is driving.

The easiest fix is probably to use Linux's default port, then (if you want it to work in Windows) I think when you plug in your speakers while running Windows, Windows will ask you what you just plugged in—and it'll then configure itself to match Linux's default. I think you can do the config under Linux as well (to change Linux's default mapping), but AFAIK there is no friendly way to do so.

Related Question