I'm really at a dead end with HDMI audio. Audio works fine until
X starts, then I get the following message in dmesg:
HDMI hot plug event: Presence_Detect=0 ELD_Valid=1
If I stop X, then I get
HDMI hot plug event: Presence_Detect=1 ELD_Valid=1
and sound continues again.

This is with a G45 chipset.

Looking at the xf86-video-intel source, I see stuff like this:
if (dev_priv->has_hdmi_sink)
sdvox |= SDVO_AUDIO_ENABLE;

Someone else suggested that the video driver is taking
away the audio from the alsa driver, so anywhere that
something in the video driver does something like the
above, I commented it out. Admittedly that sounds a bit
desperate and it didn't work anyway...

Anyone know how I can either pipe audio into the
intel hdmi video driver's audio, or disable it in
favour of the alsa hdmi driver?

FYI:
card 0: Intel [HDA Intel], device 3: INTEL HDMI [INTEL HDMI]
Subdevices: 0/1
Subdevice #0: subdevice #0
00:1b.0 Audio device [0403]: Intel Corporation 82801I (ICH9 Family) HD Audio Controller [8086:293e] (rev 03)
Module: snd_hda_codec_intelhdmi
Alsa version: 1.0.18a
Kernel: 2.6.29.1

Thanks.