2

So I recently changed from Windows to Ubuntu and I am having sound issues. I don't have any sound at all. I am using NVidia Drivers so I know that may cause issues but I want to know if there is any solution. My alsamixer looks like this:

alsamixer

Also if I do aplay -l I get:

**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 3: Generic Digital [Generic Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0

I cant change the volume of S/PDIF and in alsamixer when I press F6 I only get the Nvidia card. Please help.

EDIT: When I use lspci -vnn | grep -iA4 audio I get:

00:1f.3 Multimedia audio controller [0401]: Intel Corporation Cannon Lake PCH cAVS [8086:a348] (rev 10)
Subsystem: Dell Device [1028:0949]
Flags: bus master, fast devsel, latency 32, IRQ 16
Memory at a5518000 (64-bit, non-prefetchable) [size=16K]
Memory at a5200000 (64-bit, non-prefetchable) [size=1M]

Kernel driver in use: sof-audio-pci
Kernel modules: snd_hda_intel, sof_pci_dev

00:1f.4 SMBus [0c05]: Intel Corporation Cannon Lake PCH SMBus Controller [8086:a323] (rev 10)
Subsystem: Dell Device [1028:0949]

01:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:10fa] (rev a1)
Subsystem: Dell Device [1028:0949]
Flags: bus master, fast devsel, latency 0, IRQ 17
Memory at a3080000 (32-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
yuvallinker
  • 23
  • 1
  • 4

2 Answers2

1

I had the exact problem a couple weeks ago!!

Here's a thread I started with my problem as well, and a solution bellow that I found after intensive work

Hope it fixes yours as well.

André Clérigo
  • 310
  • 2
  • 16
0

Seems like you have wrong driver loaded Kernel driver in use: sof-audio-pci

Try to override it to snd_hda_intel with this command:

sudo driverctl list-devices

You should see your audio device as 0000:1028:0949 you can also shorten the search if you write the loaded driver to be sure:

sudo driverctl list-devices | grep sof-audio-pci

Then replace loaded driver on device to snd_hda_intel

sudo driverctl set-override 0000:1028:0949 snd_hda_intel

Now you should be fine, type killall pulseaudio to refresh it or reboot the system to take effect.

If you don't have driverctl utility install it:

sudo apt install driverctl
JoKeR
  • 6,894
  • 8
  • 42
  • 64
  • Thank you very much for your answer! But when i use `sudo driverctl list-devices` I only get my devices with numbers from 0000:00:00.0 to 0000:04:00.0 although i think my audio device is `0000:01:00.1 snd_hda_intel` should i overwrite this one? – yuvallinker Apr 12 '20 at 00:23
  • Run `sudo driverctl list-devices | grep sof-audio-pci` it will show you which device is loaded to. Replace it to `snd_hda_intel` – JoKeR Apr 12 '20 at 05:41
  • Updated in my answer – JoKeR Apr 12 '20 at 05:51
  • I get `driverctl: failed to bind device 0000:00:1f.3 to driver snd_hda_intel` – yuvallinker Apr 15 '20 at 16:50
  • Did you try `sudo modprobe snd_hda_intel` ? – JoKeR Apr 15 '20 at 18:32
  • I tried it but nothing happens and i still get the error message. I tried to run it with verbose mode and i got this: `driverctl: setting driver override for 0000:00:1f.3: snd_hda_intel driverctl: device 0000:00:1f.3 not bound driverctl: reprobing driver for 0000:00:1f.3 driverctl: failed to bind device 0000:00:1f.3 to driver snd_hda_intel ` – yuvallinker Apr 16 '20 at 00:06
  • Try to reinstall pulseaudio `sudo apt remove --purge pulseaudio` then `sudo apt install pulseaudio` and `killall pulseaudio` – JoKeR Apr 16 '20 at 07:16