While those using the NVIDIA binary display driver with any modern GeForce graphics processor have great accelerated video playback on the GPU right now via VDPAU
, as a GPU-independent way to offload the video playback acceleration from the CPU there s Broadcom's Crystal HD adapter, which is backed by open-source Linux drivers. The Crystal HD has already been tapped by XBMC
and other free software projects, but new patches are available to utilize this technology within MPlayer and FFmpeg.
Philip Langdale has been the one primarily working on these patches to implement Broadcom Crystal HD support within FFmpeg and MPlayer. While the patches haven't yet landed in the mainline code-bases, they are reported to be usable and the patches are currently undergoing review.
These patches right now are in a state to allow MPlayer playback to work on the Broadcom Crystal HD 70015 ASIC with all content types except for DivX 3.11. Thus what can be accelerated right now on this Broadcom PCI Express adapter is MPEG 1/2, H.264, VC-1, MPEG-4 Part 2, and XviD. Progressive content and interlaced MPEG-2/H.264 content also can be accelerated. This support though isn't as in great shape for the older Broadcom Crystal HD 70012 adapter as its hardware design is significantly different and these Crystal HD processors don't comply with a common acceleration API like VDPAU or VA-API.
In terms of MPlayer performance with Crystal HD, Philip states, "As all codec work is done in hardware, the CPU utilization is purely based on the video resolution – almost all the time is spent copying frames back and forth. In my very unscientific tests, my old 2.2GHz Core 2 Duo laptop can play 1080p content at 25% of a core compared to 70-100% for software decoding. Also note that the X server (and window manager if you use a composited desktop) will burn measurable amounts of CPU time to display the frames. It’s supposed to be possible to do 1080p playback on a single-core Atom, but I'm not in a position the test that. Nevertheless, the benefits are clear."
You can read more (including the Git and SVN trees that need cloning if you wish to try it out) on Philip's blog
With VDPAU on NVIDIA hardware right now, you can achieve HD video playback with a $20 CPU and $30 GPU
(or less) in most any Linux multi-media application right now, including Adobe Flash