Thanks to the XBMC folks (especially alanwww1 for writing up his simplified guide) for pointing me in the right direction. Basically, Intel HD graphics uses the VAAPI for acceleration of video decoding (MythTV normally uses VDPAU which is the API used by NVidia). VAAPI support appears to be fairly far along in Debian/Ubuntu now. All you have to do to get it installed is do:
sudo apt-get install libbluray1 i965-va-driver vainfo libmad0 gtk2-engines-pixbuf
MythBuntu 11.10 includes MythTV 0.24. MythTV doesn't support VAAPI until version 0.25, so if you try viewing HDTV streams without it, you'll just see colorful dancing blocks). Fortunately, someone at UbuntuUpdates.org is building MythTV 0.25 daily for Ubuntu. It's as simple as:
sudo add-apt-repository ppa:mythbuntu/0.25
sudo apt-get update
sudo apt-get install mythtv
Note: because this is a daily build of a development version of 0.25, it may become unstable at certain times. If you decide to use this and want a stable applicance instead of living on the edge, don't update it once you get it working (same goes for a Mythbuntu install, but to a lesser extent).
Once you finish the install, restart X or MythBuntu.
To get audio over HDMI working, go to the MythTV FrontEnd and the Audio settings and tell it to use Alsa plughw device 7. Some TVs like my Sharp Aquos will complain about unrecognized sound format if fiddle with the audio settings in MythTV and will ignore sound until you power cycle the TV so be aware of this while testing.
If you have overscan issues on your HDTV (why a TV does this I don't know...you'd think that if it sees a 1080p video source, it'd just show all the pixels), you might have to look for a way to tell the HDTV to display the data in "Dot By Dot" mode or "Game Mode" to tell it to show all the pixels. You want to avoid mucking w/ overscan as much as possible (I'm assuming everyone is on a digital HDTV now instead of using the old CRT tubes) because you have to specify a weird X desktop size to get it to work and it'll be inefficient.
You might also have to go into the settings for the MythTV player and disable interlacing if your processor is too slow. After an update, the video image didn't fill the screen, so you might have to fiddle w/ the frontend playback settings...I ended up setting zoom to Auto(Half) and the ratio to 16:9.
I'm using a 2500K in a Gigabyte Z68MX-UD2H-B3 motherboard and used the simplest playblack profile. My tuner is an HDHomeRun network tuner which works fine but needs the bandwidth of a wired network (it'll saturate a wifi network during playback/recording).
That's about it...if you had to do anything else to get it to work, leave a comment and I'll update this.
p.s., I had to re-install (did a root to mdraid/lvm migration and grub refused to boot the kernel and debug info showed nothing) and used this for my re-install guide to confirm my installation wasn't a quirk.
p.p.s., if anyone wants to do an mdraid/lvm install, you can't use the Mythbuntu ISO directly, you have to install from the Ubuntu Alternate Desktop ISO or the Ubuntu Server ISO; you can also do this using the Mythbuntu ISO by running it from the live CD, configuring your mdraid/lvm setup, then double clicking the "Install" icon on the desktop, but you have to configure everything using the command line instead of the text menus from the other ISOs. Both give you the option to set up mdraid/lvm as well as use btrfs for your filesystems which I do for data integrity of back end servers in case a drive dies. Afterwards, you can install Mythbuntu separately and turn off the annoying Gnome menu/status panel (don't use the Unity desktop because you can't turn off the top status panel). Don't bother trying to uninstall libreoffice to save space because the Mythbuntu Control Center installs it back...
NOTE: after others tried to reproduce this, I found out I was really running software brute-force decode because it's using roughly 20% of the CPU. If anyone does get VAAPI successfully working, please leave a reply
1. Ken04/14/2012 12:08:55
@Dan: make sure you have the xserver-xorg-video-intel package installed...that should take care of your X desktop issue. The notes above are for Ubuntu since I wanted to tie into the MythBuntu repo. I have a Debian desktop as well, but it runs fairly old hardware (ATI IGP w/ Athlon) using the debian-multimedia repo, though it runs MythTV fine too.
2. Dan Butterfield04/14/2012 06:26:52
Should these drivers be automatically loaded and used by X/MythTV once you install the packages you describe above? I followed your install steps (thank you!) on Debian Squeeze 6.0.4 on a Core i3 2125 system and my X desktop is still using a generic VGA driver. MythTV runs super slow of course.
I noticed I had no xorg.conf file or display section in the /usr/share/X11/xorg.conf.d directory, so I tried going into maintenance mode and ran Xorg -configure, but this gives me a message about "number of created screens does not match number of detected devices." It does generate a /root/xorg.conf.new file that has a device section reading:
Section "Device"
Identifier "Card0"
Driver "intel"
VendorName "Intel Corporation"
BoardName "Sandy Bridge Integrated Graphics Controller"
BusID "PCI:0:2:0"
EndSection
However if I manually try to load this file in my X configuration, X fails to start and shows a black screen. It seems like the display device is not being properly detected automatically. Any suggestions on how I can get this to work?
3. Ken12/07/2011 13:11:02
@Nick: AFAIK, these are the same. The 0.25 PPA (it's an automated daily build system that's part of MythBuntu according to this: { Link } is how you get 0.25. After I installed Mythbuntu 11.10, it only had Myth 0.24 even after updates until I activated the 0.25 PPA.
4. Nick12/05/2011 23:10:50
mythbuntu already package 0.25 (ie the development version) via mythbuntu-repos.
What does this ppa do that mythbuntu-repos doesn't, or are they the same?
Su | Mo | Tu | We | Th | Fr | Sa |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 | ||||