I've recently upgraded from Ubuntu 20.04 to 22.04 and my input and output built-in sound devices weren't detected by the system. After trying every option described in No sound output devices listed after upgrade from 21.10 to 22.04, I was able to fix built-in speakers by adding options snd-hda-intel dmic_detect=0
into /etc/modprobe.d/alsa-base.conf
.
The issue with input devices (built-in microphone) not being detected remains. There are no problems related to the hardware, as the microphone is working in Windows 11, Ubuntu 20.04, and live Ubuntu 22.04.
Information related to the problem
This is how my settings are in Ubuntu 22.04: input devices window is empty and this is how it looks in Ubuntu 22.04 live microphone is detected
Hardware, drivers, and kernel version: HP envy 15-ep0xxx laptop with
uname -a
Linux andrii-HP-ENVY-Laptop-15-ep0xxx 6.2.0-32-generic #32~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 18 10:40:13 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
lspci -knn | grep Audio -A3
01:00.1 Audio device [0403]: NVIDIA Corporation TU116 High Definition Audio Controller [10de:1aeb] (rev a1)
Subsystem: Hewlett-Packard Company TU116 High Definition Audio Controller [103c:878d]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
01:00.2 USB controller [0c03]: NVIDIA Corporation TU116 USB 3.1 Host Controller [10de:1aec] (rev a1)
Here I compare configurations of usual and live ubuntu correspondingly:
live
ubuntu@ubuntu:~$
arecord -l
**** List of CAPTURE Hardware Devices ****
card 1: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 1: HDA Digital (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 6: DMIC (*) []
Subdevices: 0/1
Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 7: DMIC16kHz (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
ubuntu@ubuntu:~$
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) []
Subdevices: 0/1
Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 1: HDA Digital (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 3: HDMI1 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 4: HDMI2 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 5: HDMI3 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
ubuntu@ubuntu:~$
pactl info
Server String: /run/user/999/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 15
Tile Size: 65472
User Name: ubuntu
Host Name: ubuntu
Server Name: pulseaudio
Server Version: 15.99.1
Default Sample Specification: s16le 2ch 44100Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp__sink
Default Source: alsa_input.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_6__source Cookie: d5f6:7302
usual: as you can see, the microphone is not listed here
andrii@andrii-HP-ENVY-Laptop-15-ep0xxx ~
arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC245 Analog [ALC245 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
andrii@andrii-HP-ENVY-Laptop-15-ep0xxx ~
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC245 Analog [ALC245 Analog]
Subdevices: 0/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
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
andrii@andrii-HP-ENVY-Laptop-15-ep0xxx ~ pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 107
Tile Size: 65472
User Name: andrii
Host Name: andrii-HP-ENVY-Laptop-15-ep0xxx
Server Name: PulseAudio (on PipeWire 0.3.48)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.pci-0000_00_1f.3.analog-stereo
Default Source: alsa_output.pci-0000_00_1f.3.analog-stereo.monitor
Cookie: c9ba:a9b4
Here is also my codec:
cat /proc/asound/card*/codec* | grep Codec
Codec: Realtek ALC245
Codec: Intel Kabylake HDMI
Codec: Nvidia GPU 99 HDMI/DP
What I tried that didn't work:
reinstalling completely alsa, pulseaudio:
sudo apt-get remove --purge alsa-base pulseaudio
sudo apt-get install alsa-base pulseaudio
sudo alsa force-reload
restarting pulseaudio instance:
pulseaudio -k
pulseaudio -D
restarting pulseaudio service:
systemctl --user restart pulseaudio.service
systemctl --user restart pulseaudio.socket
using pipewire insdead of pulseaudio:
sudo apt install pipewire-audio-client-libraries
systemctl --user stop pulseaudio.service
systemctl --user stop pulseaudio.socket
systemctl --user disable pulseaudio.service
systemctl --user disable pulseaudio.socket
systemctl --user start pipewire.service
systemctl --user start pipewire-pulse.service
systemctl --user enable pipewire.service
systemctl --user enable pipewire-pulse.service
removing configuration files:
rm -r ~/.config/pulse
running
sudo touch /usr/share/pipewire/media-session.d/with-pulseaudio
systemctl --user restart pipewire-session-manager
Any ideas how to fix this?
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash loglevel=3 snd-intel-dspcfg.dsp_driver=3"
in /etc/default/grub then runningsudo update-grub
. This flag replaceddmic_detect=0
which was suggested in some places. – PLNech Feb 01 '24 at 09:56