No sound over HDMI after waking up from suspend

So, I figured out some important details that might help others in the future. I still wonder if there’s anything actionable here though in terms of bug reporting or feature requesting.

Doing things in the right order

Here’s what happens: when I leave the computer for a while, I suspend it and turn the TV off.

In my experience, at least, there is no way to suspend the computer once the screen is off. So, I always must first suspend and then turn the TV off.

Here’s the kicker: if, upon returning to the PC, I first wake the computer and then turn on the TV, the TV says that the connection is DVI, not HDMI. This explains why KDE’s config settings won’t show there’s an HDMI setting at all for this output device; I suspect no DE’s settings would. Pavucontrol does show there’s an HDMI setting, but it shows as unplugged / unavailable.

In my testing, the only way to restore proper audio settings is doing things in this order:

  1. Suspend the PC
  2. Turn TV off
  3. Turn TV on
  4. Wake the PC

This ensures HDMI device is chosen and it’s set correctly. I can play audio right away, immediately after the screen is on.

Resetting the device if TV is turned off with the PC on

If I turn the TV off and on without suspending the PC first, it will disable the HDMI device but won’t re-enable it afterward. I have to manually go to sound settings, re-enable the device, and re-set it to HDMI output (instead of “Pro audio”).

Can one recover from the DVI thing?

I haven’t tested if, after botching the setup by doing things in the “wrong” order, I can set it up correctly again by doing things in the right order. If I recall correctly only logging out of the session and in again (or rebooting, of course) would make things right, likely because wayland is restarted (?) and perhaps the TV recognises an HDMI connection again? I don’t know.

Is this a bug?

I also do not know if this is supposed to happen this way; my guess is that it’s not. Even then, I don’t know if it’s a problem with my hdmi cable, an Nvidia card problem, a Nouveau problem, a kernel issue, or a pipewire issue. If anyone thinks this is worth investigating further let me know, I can do some more digging.

I’ll keep checking if doing things in the right order will always get me good results, or maybe I was just lucky. Conversely, I just tried reproducing the wrong order thing and… audio config worked this time. I’m guessing there needs to be some time between events (e.g. the TV has to be off for some time) for this issue to emerge.

1 Like