I am running Fedora 18 and PulseAudio won’t let me select HDMI Audio output. From looking at the logs, it appears that PulseAudio thinks that the HDMI audio jack is unplugged. However, aplay and speaker-test work just fine when I specify the HDMI audio device. My guess is that the Nvidia driver is failing to report that the HDMI is plugged in. Is there a way to see what the Nvidia driver thinks about the presence of the HDMI audio? Or, have any other suggestions / work arounds?
I have similar HDMI audio problems with Nvidia MCP79. Latest drivers wont work, but I have sound on previous releases (304.64) with very strange workaround: after xrandr -s 0 (or try to set any other resolution) hdmi ports became available. Below output of pacmd list-sinks, first before xrandr call and second after.
I wrote a script for my kiosk linux distribution which switch sound output to hdmi if hdmi display connection detected. Try to use it, I have no more ideas… Rename script to .sh and run (pulseaudio-utils and alsa-utils must be installed).
Because of your script, I found the command that worked to enable HDMI on my laptop:
pacmd set-card-profile 0 output:hdmi-surround
It appears that PulseAudio (or ALSA or Nvidia) is always reporting that the HDMI jack is unplugged instead of unavailable. I figure that this is a bug - most likely in the Nvidia driver, right?
I think that Nvidia driver developers broke something in hdmi audio code in 304.* and later drivers. We can see several complains in this forum. And no visible Nvidia activity to fix bugs. I understand that for graphic drivers developers it is very boring to dig audio code but I hope that they’ll find time sooner or later.
Can confirm that I am experiencing the same issue. When I unplug my display port monitor and restart X, all of a sudden I can use HDMI sound from my TV.