I fought with XBMC Live yesterday for half a day trying to get Audio out of the HDMI port on my GT240 NVidia graphics card. It turns out it is very simple, I was fighting with it for nothing, I was just missing a little information and I was reading older posts on alsa sound configurations that didn’t need to be touched. XBMC was almost ready to go once it was installed.
First if you don’t need the computer on-board audio, I would go into the BIOS and disable it so it wont interfere with the HDMI audio devices.
Here is a quick how-to install XBMC live 10.1 and how to get audio out of the GT240. Follow the instructions here on how to download and install XBMC Live .ISO I have it installed on a 2Gig USB Thumb drive. Once installed to a USB drive or a hard drive (not running from the CD, because you can’t keep your settings when running from the CD) exit XBMC this will get you to the login prompt (one or twice it didn’t show up and I had to hit ALT-F1 or ALT-F2). Enter the username and password you chose when you installed XBMC to the drive. This password is also the root (sudo) password. You can also login to your XBMC box from a remote computer using ssh, to find out the ip address of your XMBC login to it directly and type:
You will see the following (and more), the inet addr: is the IP address you need to use from another computer in your house. In my case it’s 192.168.1.44
eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx inet addr:192.168.1.44 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::6ef0:49ff:fe2c:fde/64 Scope:Link
So I would pull up a terminal on my MAC (I like to use iTerm on my Mac because the Function keys works better) or linuxbox and type
$ ssh email@example.com
From here I had to un-mute my HDMI ports
You will need to un-mute the S/PDIF ports by hitting the ‘M’ key and moving to the next port (right and left arrows) the ‘MM’ will turn to ’00’
┌──┐ ┌──┐ ┌──┐ ┌──┐ │ │OO│ │OO│ │OO│ │OO│ │ └──┘ └──┘ └──┘ └──┘ │ < S/PDIF >S/PDIF 1 S/PDIF 2 S/PDIF 3
Press ‘F2” to get the System information then select /proc/asound/devices, you will see something like:
┌─────── /proc/asound/devices ───────┐ │ │ 0: [ 0] : control │ │ │ 1: : sequencer │ │ │ 4: [ 0- 0]: hardware dependent │ │ │ 5: [ 0- 1]: hardware dependent │ │ │ 6: [ 0- 2]: hardware dependent │ │ │ 7: [ 0- 3]: hardware dependent │ │ │ 19: [ 0- 3]: digital audio playback│ │ │ 23: [ 0- 7]: digital audio playback│ │ │ 24: [ 0- 8]: digital audio playback│ │ │ 25: [ 0- 9]: digital audio playback│ │ │ 33: : timer │ │ └────────────────────────────────────┘
From the window shown the digital audio playback lines show [0- 3] [0- 7] [0- 8] [0- 9]. From this list I chose [0- 7] since [0- 3] is also an input (see it shows up twice in the list). In the [0- 7] the 0 means card 0 and the 7 means device number 7. To test out your speakers use the speaker-test command. With your HDMI ports now un-muted you should hear sound from at least one of the devices shown above. My [0- 7] worked perfectly with this command. Use ‘speaker-test -h’ for help using this command.
$ speaker-test -Dplughw:0,7 -c6
This gave me sound out of all my 5.1 ( -c6 ) speakers and now I know what to use in the custom lines in the XBMC Settings>System>Audio output menu. The top line Audio output should be HDMI, the next important line is the Audio output device set it to Custom and the line below that Custom audio device should be set to plughw:0,7
The next line Passthrough output device should also be set to Custom and the line below that Custom passthrough device should also be set to plughw:0,7
You might need to reboot for the audio settings to take effect, I’m not an alsa expert but this works for me…
I hope this helps someone from wasting a day fighting with their HDMI audio port.