No Audio Over HDMI with GTX 1050 Ti on Ubuntu 20.10

My laptop is connected to an external monitor via HDMI. Using nvidia-driver-460 or nvidia-driver-450, the monitor’s speakers do not appear in the drop-down menu in my audio settings. Using xserver-xorg-video-nouveau, nvidia-driver-460-server, or nvidia-driver-390, they do, and they work when selected. This is most notable because nvidia-driver-460 is the recommended driver. Here is my nvidia-bug-report.log.gz (357.1 KB) after switching back to nvidia-driver-460 and then rebooting.

Please run nvidia-bug-report.sh as root and attach the resulting nvidia-bug-report.log.gz file to your post.

1 Like

Done; thank you!

Your audio device is powered off, this shouldn’t happen. Please post the output of

grep 10de /lib/udev/rules.d/* /etc/udev/rules.d/*
1 Like

When I run this command with nvidia-driver-460 installed, which exhibits the bug, I see the following output:

/lib/udev/rules.d/71-nvidia.rules:SUBSYSTEM=="pci", ATTRS{vendor}=="0x10de", DRIVERS=="nvidia", TAG+="seat", TAG+="master-of-seat"
/lib/udev/rules.d/71-nvidia.rules:ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x03[0-9]*", TEST=="power/control", ATTR{power/control}="auto"
/lib/udev/rules.d/71-nvidia.rules:ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x040300", TEST=="power/control", ATTR{power/control}="auto"
/lib/udev/rules.d/71-nvidia.rules:ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c0330", TEST=="power/control", ATTR{power/control}="auto"
/lib/udev/rules.d/71-nvidia.rules:ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c8000", TEST=="power/control", ATTR{power/control}="auto"

When I run this command with nvidia-driver-460-server installed, which does not exhibit the bug, I see the following output:

/lib/udev/rules.d/71-nvidia.rules:SUBSYSTEM=="pci", ATTRS{vendor}=="0x10de", DRIVERS=="nvidia", TAG+="seat", TAG+="master-of-seat"

Those are files added by Ubuntu to enable runtime power management. This wouldn’t work anyway on your hardware (too old) but shouldn’t have any side-effects. On your hardware though, this seems to trigger a bios bug: once the audio device is suspended, it can’t turn on anymore.
Please check for a bios update. If that’s not helping try creating an file
/lib/udev/rules.d/72-nvidia-override.rules

ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x03[0-9]*", TEST=="power/control", ATTR{power/control}="on"
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x040300", TEST=="power/control", ATTR{power/control}="on"
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c0330", TEST=="power/control", ATTR{power/control}="on"
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c8000", TEST=="power/control", ATTR{power/control}="on"

and run
sudo update-initramfs -u
afterwards, then reboot.
If that also doesn’t work, try commenting out the additional rules in the original file and recreate the initrd. The latter would have to be done on every driver update, though.

1 Like

Thank you for the thoughtful suggestions; that was very impressive. I updated my BIOS, which was a good thing to do but had no effect on the bug. Creating /lib/udev/rules.d/72-nvidia-override.rules and running sudo update-initramfs -u also had no effect, but commenting out the four additional rules at the bottom of /lib/udev/rules.d/71-nvidia.rules and running sudo update-initramfs -u worked around the bug. I will make sure to comment these lines back out and then run sudo update-initramfs -u on every driver update if necessary. Would you recommend that course of action over switching to the NVIDIA Server driver?

I actually don’t know how Ubuntu packages their “server” driver, previously, they just had a “headless” package without graphics support. Might also be that just the 32bit compat libs for 32bit software (steam games) is missing. So you’ll have to try what works best for you.

1 Like