HDMI audio output hell

This is a gigantic PITA. I can’t believe some people still think proprietary software has good support for proprietary hardware – Even with a relatively simple setup like this, many hours of searching forums, installing and reinstalling drivers, fiddling with the BIOS and sound settings still hasn’t produced any sound.

  1. Upgraded the A/V receiver firmware. This was easy since I’ve connected it to the Internet. It’s now got the latest firmware.
  2. Installed, removed and reinstalled the latest video driver – Catalyst Software Suite 12.8. I rebooted after each step.
  3. When I plug in the HDMI cable, a device called Generic PnP Monitor is added to the Devices list. I know it corresponds to the A/V receiver, because it is removed again if I unplug the cable. This messed up the dual-screen display the first time I plugged in the HDMI cable, making only the secondary display active until I managed to move the Catalyst Control Center window from the invisible desktop to the visible one.
  4. Tried to update the driver of the Generic PnP Monitor, but it just says the driver is up to date.
  5. In the Sound → Playback window the AMD HDMI Output playback device is enabled, but it shows simply Not plugged in, so I can’t configure it or set it to the default, as some forum posts instruct.
  6. In the BIOS menu there is a setting called SPDIF OUT Mode Setting [sic], with possible values SPDIF and HDMI. It’s set to SPDIF, according to this cryptic description: Select the [HDMI] option only if you have a video card with HDMI support and are using the SPDIF signal for the high-definition monitor’s speakers. I’m not using monitor speakers.
  7. In the Screen Resolution window there’s a TX-NR509 device. The resolution and orientation can’t be set, and I’ve set Multiple displays to Disconnect this display.
  8. The A/V receiver shows that it’s connected, but not receiving a signal.

In conclusion, both devices know about each other, but Windows 7 seems to think the A/V receiver is a monitor. Any ideas?

Re: Let That Be a Lesson To You, Son: Never Upgrade.

Background: Jeff Atwood uses anecdotal evidence to show that Linux audio capabilities suck.

Looks like Linux is moving up in Scott Berkun’s suckiness hierarchy: It’s now good enough for most people for most things, but it still has weak areas (audio, games) which those users find extremely painful.

Reverse anecdotal evidence: After buying my last computer in 2007, I could not get optical surround sound to work in XP (Google, Usenet, and vendor contacted). For the first time I found that Linux (Ubuntu 7.10) had better hardware support, even though the vendor only supported Windows. And there’s proof, too.

5.1 optical audio out in Ubuntu Gutsy

Finally, the moment has arrived! After trying on at least five GNU/Linux distributions and FreeBSD, 5.1 surround sound via S/PDIF (aka. IEC958) finally works, on the latest stable version of the new wunderkind of distributions, Ubuntu Gutsy. The instructions were easy enough, and what follows is a version you can pretty much copy to the command line. Note that these are for ASUS P5K-E motherboards (which have the Analog AD1988B sound chip) – they may not work for you.

  1. sudo apt-get install linux-ubuntu-modules-2.6.22-14-386 (look out for newer versions later)
  2. Restart
  3. sudo depmod -aAe
  4. sudo modprobe snd-hda-intel

I fired up a DVD, a Dolby Surround demo, and Doom 3 with the latest patch and +set s_alsa_pcm spdif +set s_numberOfSpeakers 6, and whaddyaknow! It all works! Even the manufacturer’s Windows driver doesn’t support optical surround sound.

Thank you developers!

Update: +set s_alsa_pcm spdif +set s_numberOfSpeakers 6 also works for Enemy Territory: Quake Wars. Yay!