Mic boost gets muted after reboot

Hello Manjarians,

this problem has been apparent since I replaced my Arch install with Manjaro XFCE. I can’t find any clues in the journal or in any settings that I’m aware of. After each boot I’ve to use alsamixer to unmute the mic boost so I’m audible to my conversational partner. Audio on Linux has been an Overfiend for me since the beginning and I’m at a loss on debugging this. To start I posted my (somewhat custom PA) daemon.conf, pactl info and the obligatory inxi output. Some insight will be much appreciated!

cat .config/pulse/daemon.conf

; daemonize = no
; fail = yes
; allow-module-loading = yes
; allow-exit = yes
; use-pid-file = yes
; system-instance = no
; local-server-type = user
; enable-shm = yes
; enable-memfd = yes
; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
; lock-memory = no
; cpu-limit = no

; high-priority = yes
; nice-level = -11

; realtime-scheduling = yes
; realtime-priority = 5

; exit-idle-time = 20
; scache-idle-time = 20

; dl-search-path = (depends on architecture)

; load-default-script-file = yes
; default-script-file = /etc/pulse/default.pa

; log-target = auto
; log-level = notice
; log-meta = no
; log-time = no
; log-backtrace = 0

resample-method = speex-float-5
; avoid-resampling = false
; enable-remixing = yes
; remixing-use-all-sink-channels = yes
; enable-lfe-remixing = no
; lfe-crossover-freq = 0

flat-volumes = no
; flat-volumes = yes

; rlimit-fsize = -1
; rlimit-data = -1
; rlimit-stack = -1
; rlimit-core = -1
; rlimit-as = -1
; rlimit-rss = -1
; rlimit-nproc = -1
; rlimit-nofile = 256
; rlimit-memlock = -1
; rlimit-locks = -1
; rlimit-sigpending = -1
; rlimit-msgqueue = -1
; rlimit-nice = 31
; rlimit-rtprio = 9
; rlimit-rttime = 200000

default-sample-format = s24le
default-sample-rate = 96000
alternate-sample-rate = 48000
default-sample-channels = 2
; default-channel-map = front-left,front-right

; default-fragments = 4
; default-fragment-size-msec = 25

; enable-deferred-volume = yes
; deferred-volume-safety-margin-usec = 8000
; deferred-volume-extra-delay-usec = 0

pactl info

Server String: /run/user/1000/pulse/native
Library Protocol Version: 33
Server Protocol Version: 33
Is Local: yes
Client Index: 64
Tile Size: 65472
User Name: manjarist
Host Name: manjarum
Server Name: pulseaudio
Server Version: 13.0
Default Sample Specification: s24le 2ch 96000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.pci-0000_07_04.0.iec958-stereo
Default Source: alsa_input.pci-0000_07_04.0.analog-stereo
Cookie: 7c1b:742b

"inxi -Fazy"
System:
  Kernel: 5.8.6-1-MANJARO x86_64 bits: 64 compiler: N/A
  parameters: BOOT_IMAGE=/boot/vmlinuz-5.8-x86_64
  root=UUID=f7f8a12c-0cdd-4456-88d9-daf2c5643027 rw
  resume=UUID=6b16004a-0720-4947-914a-f3feba91ebb2 udev.log_priority=3
  Desktop: sway 1.5 dm: LightDM 1.30.0 Distro: Manjaro Linux
Machine:
  Type: Desktop System: Gigabyte product: N/A v: N/A serial: <filter> Chassis:
  type: 3 serial: <filter>
  Mobo: Gigabyte model: 990XA-UD3 v: x.x serial: <filter>
  UEFI: American Megatrends v: FD date: 02/04/2013
Battery:
  Device-1: hidpp_battery_0 model: Logitech Wireless Mouse MX Master 3
  serial: <filter> charge: 10% (should be ignored) rechargeable: yes
  status: Discharging
CPU:
  Topology: 8-Core model: AMD FX-8320E bits: 64 type: MCP arch: Bulldozer
  family: 15 (21) model-id: 2 stepping: N/A microcode: 6000852
  L2 cache: 2048 KiB
  flags: avx lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
  bogomips: 56283
  Speed: 1479 MHz min/max: 1400/3500 MHz boost: enabled Core speeds (MHz):
  1: 1422 2: 1493 3: 1626 4: 1677 5: 1465 6: 1441 7: 2920 8: 2632
  Vulnerabilities: Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: spec_store_bypass
  mitigation: Speculative Store Bypass disabled via prctl and seccomp
  Type: spectre_v1
  mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, STIBP:
  disabled, RSB filling
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: AMD Ellesmere [Radeon RX 470/480/570/570X/580/580X/590]
  vendor: Tul driver: amdgpu v: kernel bus ID: 01:00.0 chip ID: 1002:67df
  Display: server: X.Org 1.20.8 compositor: sway v: 1.5 driver: amdgpu,ati
  unloaded: modesetting,radeon alternate: fbdev,vesa display ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1200 s-dpi: 96 s-size: 508x318mm (20.0x12.5")
  s-diag: 599mm (23.6")
  Monitor-1: XWAYLAND0 res: 1920x1200 hz: 60 dpi: 94
  size: 520x330mm (20.5x13.0") diag: 616mm (24.2")
  OpenGL: renderer: AMD Radeon RX 480 Graphics (POLARIS10 DRM 3.38.0
  5.8.6-1-MANJARO LLVM 10.0.1)
  v: 4.6 Mesa 20.1.7 direct render: Yes
Audio:
  Device-1: AMD Ellesmere HDMI Audio [Radeon RX 470/480 / 570/580/590]
  vendor: Tul driver: snd_hda_intel v: kernel bus ID: 01:00.1
  chip ID: 1002:aaf0
  Device-2: C-Media CMI8788 [Oxygen HD Audio] vendor: ASUSTeK Virtuoso 100
  driver: snd_virtuoso v: kernel bus ID: 07:04.0 chip ID: 13f6:8788
  Sound Server: ALSA v: k5.8.6-1-MANJARO
Network:
  Device-1: Intel 82574L Gigabit Network driver: e1000e v: 3.2.6-k port: d000
  bus ID: 02:00.0 chip ID: 8086:10d3
  IF: enp2s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
  Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
  vendor: Gigabyte driver: r8169 v: kernel port: c000 bus ID: 04:00.0
  chip ID: 10ec:8168
  IF: enp4s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Drives:
  Local Storage: total: 12.00 TiB used: 7.39 TiB (61.6%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/sda vendor: Samsung model: SSD 830 Series size: 119.24 GiB
  block size: physical: 512 B logical: 512 B speed: 6.0 Gb/s serial: <filter>
  rev: 3B1Q scheme: GPT
  ID-2: /dev/sdb vendor: Crucial model: CT1000MX500SSD1 size: 931.51 GiB
  block size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s serial: <filter>
  rev: 023 scheme: GPT
  ID-3: /dev/sdc vendor: HGST (Hitachi) model: HDN724040ALE640 size: 3.64 TiB
  block size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
  rotation: 7200 rpm serial: <filter> rev: A5E0 scheme: GPT
  ID-4: /dev/sdd vendor: HGST (Hitachi) model: HDN724040ALE640 size: 3.64 TiB
  block size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
  rotation: 7200 rpm serial: <filter> rev: A5E0 scheme: GPT
  ID-5: /dev/sde vendor: HGST (Hitachi) model: HDN724040ALE640 size: 3.64 TiB
  block size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
  rotation: 7200 rpm serial: <filter> rev: A5E0 scheme: GPT
  ID-6: /dev/sdf type: USB vendor: Kingston model: HyperX Savage
  size: 58.62 GiB block size: physical: 512 B logical: 512 B serial: <filter>
  rev: PMAP scheme: MBR
RAID:
  Supported md-raid types: raid6 raid5 raid4
  Device-1: md0 type: mdraid status: active Components:
  online: sdc1~c5 sde1~c3 sdd1~c4
  Info: raid: raid-5 blocks: 7813568000 report: 3/3 UUU chunk size: 256k
  super blocks: 1.2 algorithm: 2
Partition:
  ID-1: / raw size: 110.15 GiB size: 107.92 GiB (97.98%)
  used: 21.68 GiB (20.1%) fs: ext4 dev: /dev/sda2
Swap:
  Kernel: swappiness: 60 (default) cache pressure: 100 (default)
  ID-1: swap-1 type: partition size: 8.80 GiB used: 0 KiB (0.0%) priority: -2
  dev: /dev/sda3
Sensors:
  System Temperatures: cpu: 40.1 C mobo: N/A gpu: amdgpu temp: 62 C
  Fan Speeds (RPM): N/A gpu: amdgpu fan: 424
Info:
  Processes: 265 Uptime: 3h 02m Memory: 15.66 GiB used: 5.25 GiB (33.5%)
  Init: systemd v: 246 Compilers: gcc: 10.2.0 Packages: pacman: 1324 lib: 424
  Shell: Zsh v: 5.8 running in: alacritty inxi: 3.1.05
1 Like

You can try sudo alsactl store

1 Like

Thank you, that did resolve it. Though I still don’t understand why it is necessary.

sudo alsactl store - saves ALSA settings to file - /var/lib/alsa/asound.state

when system is booted, the system restores the saved ALSA settings

user can check if correct settings are saved with

sudo alsactl restore

ALSA settings for audio capture are usually turned off by default and need to be adjusted to correct level after installing OS
But once ALSA settings are correct, the settings should stay in that fixed state

1 Like

Thank you for the input. Unfortunately the restore command replies with

alsactl: set_control:1461: Cannot write control '3:1:0:IEC958 Playback PCM Stream:0' : Operation not permitted

Hope Pipewire will make the Audio part of Linux easier and more intuitive, next year, in the future.

please post reponse to

lspci -vvnnd "::0403"

I suspect the error may be due to ALSA settings for the onboard Realtek ALC889, that is either turned off in BIOS, or blacklisted
alsactl may still restore settings for active devices correctly and error may only relate to disabled device

try using

sudo alsactl nrestore

man alsactl
nrestore is like restore, but it notifies also the daemon to do new rescan for available soundcards.

01:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere HDMI Audio [Radeon RX 470/480 / 570/580/590] [1002:aaf0]
	Subsystem: Tul Corporation / PowerColor Device [148c:aaf0]
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin B routed to IRQ 42
	NUMA node: 0
	IOMMU group: 14
	Region 0: Memory at fea60000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: <access denied>
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel

The onboard sound card should be disabled as I use my Xonar Essence STX exclusively.

alsactl: set_control:1461: Cannot write control '3:1:0:IEC958 Playback PCM Stream:0' : Operation not permitted
alsactl: set_control:1461: Cannot write control '2:0:0:IEC958 Playback Default:4' : Operation not permitted
alsactl: set_control:1461: Cannot write control '3:10:0:Playback Channel Map:0' : Device or resource busy 

you probably need this to find details for the Asus card

lspci -vvnnd "::0401"

(or else “::0402”)


I use my Xonar Essence STX exclusively

The audio card may work better if it is the only device available for system, or the first available device ahead of the HDMI audio

create a file with a text editor (any text editor will do but Manjaro has nano on every DE)

sudo nano /etc/modprobe.d/alsa-cards.conf 

add this text to the file to remove the HDMI audio

blacklist snd_hda_intel

Or this to keep the HDMI, but relegate it to 2nd device

options snd slots=snd_virtuoso,snd_hda_intel

use Ctrl + O to save file

and Ctrl + X to exit nano

then reboot to get audio devices reloaded

07:04.0 Multimedia audio controller [0401]: C-Media Electronics Inc CMI8788 [Oxygen HD Audio] [13f6:8788]
	Subsystem: ASUSTeK Computer Inc. Virtuoso 100 (Xonar Essence STX) [1043:835c]
	Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 32 (500ns min, 6000ns max)
	Interrupt: pin A routed to IRQ 16
	NUMA node: 0
	IOMMU group: 12
	Region 0: I/O ports at b000 [size=256]
	Capabilities: <access denied>
	Kernel driver in use: snd_virtuoso
	Kernel modules: snd_virtuoso

Thx, I blacklisted the intel module. I’ll give it a try and see how it works.

As a related question: What would be the most optimal settings for my PA daemon.conf

Following this link

https://furneaux.ca/wiki/ASUS_Xonar_Essence_STX#Linux

these settings should be optimal,

resample-method = speex-float-7

default-sample-format = s24le
default-sample-rate = 192000

but I get crackling when I listen to one video while some streams are being played and it seems to be correlated to the sample rate. I tried 192000, 96000 and 48000, the higher the number the more crackling. Also how can I figure out what the best speex-float setting is? You seem to have some insight as you commented on this thread of the Level1Forum:

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

In case there is more information to add, this topic was opened again.

Continuing from the discussion closed after only 3 days Mic boost gets muted after reboot:

The wiki post you linked to has good comments about resample-method settings

It is recommended to test different values on the system in question

the most powerful computers today cannot use level 10

I find even the recommendation to use speex-float-7 has a noticeable load on CPU

I am using speex-float-4 as it seems slightly better than speex-float-3
But I have sample rate locked to 48000Hz in Pulseaudio, matched to JACK
I do not hear any difference from bigger sample-rates but upsampling content to 96000 or more can cause system problems with no gain in sound quality

To play high bitrate than 48000Hz it is usually better to suspend or turn off Pulseaudio and play direct to ALSA; avoid resampling and less chance of crackling noises

2 Likes

Thank you for the advice. With 48 kHz I get no distortions and will keep the setting. I’ll play around with the speex-float levels and will have a listen.

(Three days is really somewhat short. I’d give it 8 days so at least one weekend is included)

1 Like