You are not logged in.

#1 2018-01-31 23:41:30

herojeanpierre
Member
Registered: 2017-05-31
Posts: 9

PulseAudio Makes Volume Very Low

Hello,

Long time Arch user. Recently installed it on my Yoga 910 laptop, after getting everything working I installed PulseAudio on top of Alsa. Great. Except, when I do this, it sets the max volume to sound very quiet on my speakers. I have tried a lot of things and can't quite figure it out. However, when I uninstall Pulse, the volume goes back to normal

I've tried:

- Making sure the apps I'm using have their volume maxed out
- Gone into AlsaMixer, hit F5 to see all channels, boosted them all to max, volume, nothing
- ^ Same with pavucontrol
- Installing and reinstalling Pulse to see it 'd correct itself, it didn't
- Tried the command alsactl store, but am met with

 alsactl: get_control:247: Cannot read control info '2,0,0,Beep Playback Volume,0': Invalid argument 

I am at a loss. I like pulse a lot because of the Bluetooth compatibility and other reasons.

Any suggestions? Any other information I can provide to assist diagnostics?

Thanks,
JP

Last edited by herojeanpierre (2018-01-31 23:42:20)

Offline

#2 2018-02-01 01:14:56

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,739

Re: PulseAudio Makes Volume Very Low

Try and add

ignore_dB=true

to the load-module module-udev-detect line in your /etc/pulse/default.pa and FWIW if that doesn't fix it already post the full output of

amixer -c$cardindex from aplay -l$
pacmd list-sinks
pacmd list-sink-inputs

while reproducing the low volume scenario

Offline

#3 2018-02-01 02:13:36

herojeanpierre
Member
Registered: 2017-05-31
Posts: 9

Re: PulseAudio Makes Volume Very Low

Thank you for the suggestion V1del.

I placed that into my default.pa

### Automatically load driver modules depending on the hardware available
.ifexists module-udev-detect.so
load-module module-udev-detect ignore_dB=true
.else
### Use the static hardware detection module (for systems that lack udev support)
load-module module-detect
.endif

Saved and restarted. However, the problem is still here. So this is the output of the commands you gave me.

amixer -c$cardindex from aplay -l$ (error)

Invalid card number.
amixer: invalid option -- 'l'
Invalid switch or option needs an argument.
amixer: invalid option -- '$'
Invalid switch or option needs an argument.
Usage: amixer <options> [command]

Available options:
  -h,--help       this help
  -c,--card N     select the card
  -D,--device N   select the device, default 'default'
  -d,--debug      debug mode
  -n,--nocheck    do not perform range checking
  -v,--version    print version of this program
  -q,--quiet      be quiet
  -i,--inactive   show also inactive controls
  -a,--abstract L select abstraction level (none or basic)
  -s,--stdin      Read and execute commands from stdin sequentially
  -R,--raw-volume Use the raw value (default)
  -M,--mapped-volume Use the mapped volume

Available commands:
  scontrols       show all mixer simple controls
  scontents	  show contents of all mixer simple controls (default command)
  sset sID P      set contents for one mixer simple control
  sget sID        get contents for one mixer simple control
  controls        show all controls for given card
  contents        show contents of all controls for given card
  cset cID P      set control contents for one control
  cget cID        get control contents for one control

Since the above command didn't work, here is the output of amixer if it's of any use.

Simple mixer control 'Master',0
  Capabilities: pvolume pswitch pswitch-joined
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 65536
  Mono:
  Front Left: Playback 65536 [100%] [on]
  Front Right: Playback 65536 [100%] [on]
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch cswitch-joined
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 65536
  Front Left: Capture 65536 [100%] [on]
  Front Right: Capture 65536 [100%] [on]

And the output of aplay

**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC299 Analog [ALC299 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

pacmd list-sinks

1 sink(s) available.
  * index: 0
	name: <alsa_output.pci-0000_00_1f.3.analog-stereo>
	driver: <module-alsa-card.c>
	flags: HARDWARE DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
	state: SUSPENDED
	suspend cause: IDLE 
	priority: 9039
	volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
	        balance 0.00
	base volume: 65536 / 100% / 0.00 dB
	volume steps: 65537
	muted: no
	current latency: 0.00 ms
	max request: 0 KiB
	max rewind: 0 KiB
	monitor source: 0
	sample spec: s16le 2ch 44100Hz
	channel map: front-left,front-right
	             Stereo
	used by: 0
	linked by: 0
	configured latency: 0.00 ms; range is 0.50 .. 2000.00 ms
	card: 0 <alsa_card.pci-0000_00_1f.3>
	module: 6
	properties:
		alsa.resolution_bits = "16"
		device.api = "alsa"
		device.class = "sound"
		alsa.class = "generic"
		alsa.subclass = "generic-mix"
		alsa.name = "ALC299 Analog"
		alsa.id = "ALC299 Analog"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		alsa.device = "0"
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.long_card_name = "HDA Intel PCH at 0xa1328000 irq 132"
		alsa.driver_name = "snd_hda_intel"
		device.bus_path = "pci-0000:00:1f.3"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
		device.bus = "pci"
		device.vendor.id = "8086"
		device.vendor.name = "Intel Corporation"
		device.product.id = "9d71"
		device.product.name = "Sunrise Point-LP HD Audio"
		device.form_factor = "internal"
		device.string = "front:0"
		device.buffering.buffer_size = "352800"
		device.buffering.fragment_size = "176400"
		device.access_mode = "mmap+timer"
		device.profile.name = "analog-stereo"
		device.profile.description = "Analog Stereo"
		device.description = "Built-in Audio Analog Stereo"
		module-udev-detect.discovered = "1"
		device.icon_name = "audio-card-pci"

pacmd list-sink-inputs

0 sink input(s) available.

Somone suggests an interesting solution to someone having the same problem as me here: https://unix.stackexchange.com/question … an-8-pulse

This is what it says verbatim:

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.

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.

The only problem is I don't know how to make Linux the default port.

Thanks.

Last edited by herojeanpierre (2018-02-01 02:24:47)

Offline

#4 2018-02-01 08:15:53

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,739

Re: PulseAudio Makes Volume Very Low

The addendum was not to be taken literally and the command I'd like is

amixer -c0

in this case. (From the output of aplay -l the card number, in this case 0) just from the sink everything looks like it's supposed to, can you actually play something back and repost the output of the pacmd commands (oh and maybe remove the ignore_Db again, as it might potentially mask the effect I'm looking for without actually fixing it, sorry should've made more clear to post the outputs before the change attempt)?

If the port logic in linux in general were wrong, you would have the same issue on ALSA only so that should be out of the window

Last edited by V1del (2018-02-01 09:19:14)

Offline

#5 2018-02-01 21:14:11

herojeanpierre
Member
Registered: 2017-05-31
Posts: 9

Re: PulseAudio Makes Volume Very Low

Thanks again, hmm,

amixer -c0 yield

 amixer: Mixer hw:0 load error: Invalid argument 

Something interesting though, I am diligintly looking for solutions whilst applying your suggestions. I found that

alsactl init actually bumped up the volume to a reasonable level, nothing near completely normal, but just a little higher than before. The output of the command is as follows.

 
alsactl: sysfs_init:48: sysfs path '/sys' is invalid

Found hardware: "HDA-Intel" "Realtek ALC299" "HDA:10ec0299,17aa3801,00100002 HDA:8086280b,80860101,00100000" "0x17aa" "0x3806"
Hardware is initialized using a generic method

However, upon restart the volume is not lowered again so I find I need to execute alsactl init every boot up.

What commands from pacmd specifically?

I mean here are a few after I executed alsactl init...

dump

### Configuration dump generated at Thu Feb  1 15:10:44 2018

load-module module-device-restore
load-module module-stream-restore
load-module module-card-restore
load-module module-augment-properties
load-module module-switch-on-port-available
load-module module-udev-detect
load-module module-alsa-card device_id="0" name="pci-0000_00_1f.3" card_name="alsa_card.pci-0000_00_1f.3" namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes card_properties="module-udev-detect.discovered=1"
load-module module-esound-protocol-unix
load-module module-native-protocol-unix
load-module module-gconf
load-module module-default-device-restore
load-module module-rescue-streams
load-module module-always-sink
load-module module-intended-roles
load-module module-suspend-on-idle
load-module module-console-kit
load-module module-systemd-login
load-module module-position-event-sounds
load-module module-role-cork
load-module module-filter-heuristics
load-module module-filter-apply
load-module module-cli-protocol-unix

set-sink-volume alsa_output.pci-0000_00_1f.3.analog-stereo 0x10000
set-sink-mute alsa_output.pci-0000_00_1f.3.analog-stereo no
suspend-sink alsa_output.pci-0000_00_1f.3.analog-stereo no

set-source-volume alsa_output.pci-0000_00_1f.3.analog-stereo.monitor 0x10000
set-source-mute alsa_output.pci-0000_00_1f.3.analog-stereo.monitor no
suspend-source alsa_output.pci-0000_00_1f.3.analog-stereo.monitor no

set-card-profile alsa_card.pci-0000_00_1f.3 output:analog-stereo

set-default-sink alsa_output.pci-0000_00_1f.3.analog-stereo
set-default-source alsa_output.pci-0000_00_1f.3.analog-stereo.monitor

### EOF

dump-volumes

Sink 0: reference = front-left: 65536 / 100% / 0.00 dB,
   front-right: 65536 / 100% / 0.00 dB, real = front-left: 65536 / 100% / 0.00 dB,
      front-right: 65536 / 100% / 0.00 dB, soft = front-left: 65536 / 100% / 0.00 dB,
         front-right: 65536 / 100% / 0.00 dB, current_hw = front-left: 65536 / 100% / 0.00 dB,
            front-right: 65536 / 100% / 0.00 dB,
             save = yes
	Input 0: volume = front-left: 65536 / 100% / 0.00 dB,
	   front-right: 65536 / 100% / 0.00 dB,
	 reference_ratio = front-left: 65536 / 100% / 0.00 dB,
	   front-right: 65536 / 100% / 0.00 dB,
	 real_ratio = front-left: 65536 / 100% / 0.00 dB,
	   front-right: 65536 / 100% / 0.00 dB,
	 soft = front-left: 65536 / 100% / 0.00 dB,
	   front-right: 65536 / 100% / 0.00 dB,
	 volume_factor = front-left: 65536 / 100% / 0.00 dB,
	    front-right: 65536 / 100% / 0.00 dB,
	  volume_factor_sink = front-left: 65536 / 100% / 0.00 dB,
	    front-right: 65536 / 100% / 0.00 dB,
	  save = yes
Source 0: reference = front-left: 65536 / 100% / 0.00 dB,
   front-right: 65536 / 100% / 0.00 dB,
 real = front-left: 65536 / 100% / 0.00 dB,
   front-right: 65536 / 100% / 0.00 dB,
 soft = front-left: 65536 / 100% / 0.00 dB,
   front-right: 65536 / 100% / 0.00 dB,
 current_hw = front-left: 65536 / 100% / 0.00 dB,
   front-right: 65536 / 100% / 0.00 dB,
 save = no

EDIT: I found that alsactl store is supposed to store the settings from alsa init, however, when I try to do sudo alsactl store after sudo aslactl init, i get

 
alsactl: get_control:247: Cannot read control info '2,0,0,Beep Playback Volume,0': Invalid argument

Last edited by herojeanpierre (2018-02-01 21:19:23)

Offline

Board footer

Powered by FluxBB