Jun 19, 2012

XBMC & VDPAU Ubuntu 12.04 LTS 64bit w/HDMI Sound [HTPC]



XBMC Ubuntu 12.04 HTPC Tutorial

My Setup:
Zotac ION N330 w/integrated Nvidia ION Desktop GPU
Ubuntu 12.04 64-bit
Nvidia 295.49 Driver (302.17 removed overscan and broke sound)
HDMI Sound and Digital Passthrough for Dolby Digital and DTS
BIOS Southbridge - Internal Codec only
Nvidia HDMI to HDMI DD/DTC receiver - from HDMI DD/DTC receiver to HDMI TV (From the PC, a HDMI cable goes to HDMI receiver input | Another HDMI cable connects to the HDMI receiver output and goes to the HDMI input on the TV)

Instructions:

1. Install Ubuntu 12.04 LTS, during setup, choose autologin, and update software with an internet connection

2. Download System Software Updates once the system reboots

3. Get the latest Nvidia driver
4. Reboot

5. Upon Rebooting go into the BIOS.
In your BIOS, go to Southbridge configuration and change the video RAM from 256MB to 512MB (THIS IS OPTIONAL, MY SYSTEM PLAYS BACK BLURAY WITH 256MB SELECTED). Inside the Southbridge config, change Audio codec to Internal only--this will limit sound to HDMI only, so analog sound will no longer display in Ubuntu. Internal+External will enable both HDMI and analog.

6. Install XBMC--super easy tutorial thanks to Noobslab
Install XBMC on Ubuntu 12.04 Precise Pangolin

7. Unmute HDMI/spdif

First, check to see if sound is enabled and unmuted. SPDIF should be unmuted as well:


"Code:
alsasmixer
Press <F6> to select the correct soundcard.
Press <F3> to show playback levels. <F4> selects capture levels [or use <Tab>]
Use the left/right arrow keys to select and up/down arrow keys to change levels. <M> to mute/unmute.
Go to "System ->Preferences ->Sound" and make sure the correct soundcard is default and adjust your profile on the hardware tab. 
On the output tab choose the correct device."

8. Enabling HDMI sound in XBMC

Getting Sound over HDMI was a challenge for me. This was due to my own error in modifying the sound configuration files, which I did for my previous installations. Originally, I assumed I had to modify /etc/pulse/default.pa and .asound, in the home folder, but in the end, those steps broke sound over HDMI. I had to go back and delete all modifications to get DD/DTS sound over HDMI in XBMC.

With the newer Ubuntu 12.04, XBMC, Nvidia, and Ubuntu work well with one another. HDMI system sounds should work out of the box with some minor setting changes.
  • Select HDMI in Audio Output
  • Under Audio Output Device, select Defaults (ALSA)
  • For passthrough sound to your receiver, select Defaults (PulseAudio)

8.5 Change sound outputs in Ubuntu


9. Install Xubuntu and fix video tearing

10. Enable VDPAU accelerated HD flash for browsing Youtube/Vimeo with Flashaid

11. Install Google Chrome http://www.google.com/chrome

Recap, now you should have video and system sounds over HDMI, XBMC DD/DTS passthrough over HDMI, HD VDPAU accelerated Adobe flash playback with sound, 

12. Now get some popcorn going, sit back, and enjoy your HTPC!

Troubleshooting links:

http://http.download.nvidia.com/XFree86/gpu-hdmi-audio-document/gpu-hdmi-audio.html#_verify_your_eld_is_valid
http://ubuntuforums.org/showthread.php?t=1668737