We finally have tons of machines that come in these tiny little boxes, sometimes with pretty interfaces, that hook straight up to our TVs. We’ve been asking for this for years and we finally have it. They’re even downright affordable. In order to make them affordable, they use cheap hardware. In particular, slow CPUs. they’re not that bad. Definitely fast enough to browse a bunch of movies or TV shows, but generally too slow to play back high definition video.

Pine Trail, a great little platform, uses very little power, it just can't play 1080p video

NVIDIA built an entire platform out of addressing this deficiency. It’s called ION, and it mates a fast-enough-for-most-things CPU with a GPU capable of decoding 1080p video. Hooray for NVIDIA. Here’s the problem - ION is not retrofittable.

ION, it's a new system, not an upgrade

If you have a non-ION netbook, nettop, AppleTV, Mac Mini, or other impressively tiny device that you want to use to drive high definition video you can’t. And you can’t upgrade them to enable such support.

It’s not like buying a hard drive or more memory. Well, it wasn’t at least.

In one of my last articles on ION I talked about XBMC being one of the best applications for the platform. It delivers a better UI for watching downloaded content than Windows Media Center does, and the Linux version has full hardware acceleration support for ION. Oh, and it’s free.

Last week it got even better. The next major version of XBMC, codenamed Camelot, came out with a whole bunch of new features. I haven’t had a chance to play with it yet but it definitely looks cool.

And today it just got incredible. Thanks to the efforts of Scott Davilla, the XBMC developers and Broadcom there’s now full support for the Broadcom Crystal HD decoder (BCM970012) in all versions of XBMC. The code has been merged into XBMC as of this morning and will be available in the next release of the project.

The mini PCIe BCM970012 from Logic Supply

The Crystal HD chip is currently available on mini PCIe cards, and is expected to make its way to ExpressCard and PCIe x1 cards in the future. This is huge because many netbooks, nettops and existing devices like the AppleTV or Mac Mini have at least one mini PCIe slot. A $69 mini PCIe card (or $25 on eBay) with the Crystal HD chip on it plus the next version of XBMC can enable full 1080p playback on any of these machines that would otherwise not be able to play high def video. Not to mention that you can get some of these devices second hand or refurbished for much less than the cost of a new ION system.

It’s extra sweet because the driver is open source, so we can expect to see it more than just XBMC. The next official release of XBMC is likely some time away, but support has already been added to the SVN release.

The full press release from XBMC is below.

Broadcom Crystal HD, It's Magic.

1080p HD content playback has always been the Holy Grail for any Media Center application but this has traditionally been difficult; playback using software decode alone requires a very hefty CPU and hardware decoding has only been made available recently using the nVidia's VPDAU technology, available only on Linux. Windows has its own platform specific solutions and poor old OSX has no public APIs available at all. There really is nothing around with a common API that enables hardware accelerated 1080p HD content playback that can also be used under all three major platforms (OSX, Linux, and Windows). Well, that situation is about to change.

Through hard work and the joint efforts of several TeamXBMC/Redhat developers and the Broadcom Media PC Group, cross-platform hardware decoding of mpeg2, h.264 and VC1 video content up to 1080p will be coming to XBMC on OSX, Linux, and Windows via the Broadcom Crystal HD Hardware Decoder (BCM970012). The Broadcom Crystal HD is available now in a mini-PCIE card with ExpressCard and 1X PCIE form factors to follow. This means that the AppleTV and all those lovely new netbooks, Eee Boxes and older Intel Mac Minis have exciting new potential.

This solution has a common programming API, so many 3rd party developers and applications will be able to leverage hardware accelerated video content playback across OSX, Linux, and Windows platforms with minimal source code changes. Best of all, this is an open source solution with full source code for driver and library available for OSX and Linux under a GPL/LGPL license. Wow, this indeed is the Holy Grail and a major score for the open source community as this means no more tainted Linux kernels! Support has already been added to XBMC under the svn trunk. Other media projects such as FFmpeg, MythTV and Xine will soon follow as their developers add

The Linux source code for the driver and library can be found at the Broadcom web site. For OSX, the binaries and source code for the driver and library will be hosted at http://crystalhd-for-osx.googlecode.com. Users in the USA can purchase the Crystal HD mini PCIE card from Logic Supply for $69 and of course, there's always ebay for those outside the USA.

Comments Locked


View All Comments

  • mattmc61 - Friday, January 1, 2010 - link

    I don't usually nit-pick, but since you are being so detailed about your bandwith considerations, let's remember video is diplayed at 30 fps, not 24fps. 24fps is for the movie theater.
  • bjacobson - Friday, January 1, 2010 - link

    3:2 pulldown, which is handled by [not this Broadcom chip].
  • mczak - Wednesday, December 30, 2009 - link

    oops actually video is planar 4:2:2 so only 3MB per frame, hence it possibly might work with pci. I think though it's about time chips use pcie not pci...
  • Penti - Sunday, January 3, 2010 - link

    It's 4:2:0 in practice.

    So even blu-ray none-reencoded should be fine. It uses half of full RGB uncompressed bandwidth. But PCI systems can just use a 8400GS card..
  • Stan11003 - Wednesday, December 30, 2009 - link

    PCI and PCI express are two different technology's. PCI-express is good for 250 or 1GB a sec depending the version you are using.
  • Spivonious - Wednesday, December 30, 2009 - link

    Except 1080p content is always compressed in some way (VC-1, h.264, MPEG-2, etc.) so PCI bandwidth is fine.

    Personally, I'm glad it's only PCI-Express. Maybe this way we'll see fewer motherboards sporting the 17 year-old PCI interface.
  • Zoomer - Wednesday, December 30, 2009 - link

    Except that you have to add the compressed bitstream bw to the uncompressed bw, since PCI's bw is bidirectional and you need to send the decoded stream back for display.
  • Xean - Wednesday, December 30, 2009 - link

    1080p has to be send back to GPU in order to display an uncompressed content on the screen.
  • Xean - Wednesday, December 30, 2009 - link

    1080p has to be send back to GPU in order to display an uncompressed content on the screen.
  • jmurbank - Tuesday, December 29, 2009 - link

    Yes, Broadcom provides the source code to ease the use of their CrystalHD board, but now developers have to add support for it. In Linux, developers have already added Video Acceleration API which is the backend of what nVidia's VDPAU supports. The Broadcom CrystalHD card does not make it any easier. It just complicates things.

    There is a big detail that you missed is that the motherboard have to support it. Most motherboards with a mini-PCIe slot does not support any other expansion boards besides what the motherboard manufacture sells. Motherboard manufactures uses a whitelist to make sure their mini-PCIe board is used and not any other product is used.

    I recommend call Zotac to make sure that the motherboard that you are showing can support this new expansion board from Broadcom.

Log in

Don't have an account? Sign up now