Pre-built images for XBMC (Ubuntu 12.04 based) with hw acceleration finally available at Linaro
Back to the Linaro 12.01 release, we were able to publish a XBMC based image with proper hardware acceleration support for Pandaboard. That release was based on the Ubuntu Oneiric (11.10) release, with a 3.1 based kernel, still using the old multimedia architecture provided by TI (e.g old SGX DDK, Syslink, etc).
Took a while (6 months) for TI to be finally able to rebase the hardware decode/rendering solution to the new architecture, providing quite a few improvements and making the architecture a lot simpler as well. A new SGX DDK was deployed with the functional xf86-video-omap open source X11 driver, kernel and userspace with support for RPMsg, dri2video and a few other fancy technologies that now makes the life of developers a lot easier. We’re still stuck with a few proprietary parts, like the SGX driver itself, but luckly that will also improve over the time, as we’re starting to see more and more reverse-engineer based solutions around (even Rob Clark started one called freedreno).
After TI making all the needed components available for Ubuntu Precise (12.04) during the beginning of this month, I was finally able to get them all integrated and working with the Linaro components and LEB. If you grab the latest LEB provided for Pandaboard, you’ll already be able to enjoy most of the updates available, with a better SGX driver, and a working hardware decode with gstreamer without much effort.
Unfortunatelly our TI Landing Team kernel is still missing a few important multimedia-related bits, so until they are properly integrated from TI’s own kernel tree, you’d need to make sure you’re using the kernel available directly from TI (called linux-image-ti-omap4, also available at our Overlay PPA).
To be able to have a fully functional XBMC as well, we also integrated all the new changes to support a native Gstreamer player (improved a lot by Rob Clark as well, adding EGLImage support), which solves most of the a/v sync issues we had with the Oneiric based release. There are probably a few things missing as well, but at least the patch is not that intrusive anymore, and could probably be accepted by upstream later on.
Want to see how things are looking by yourself? Please check at http://snapshots.linaro.org/precise/pre-built/ti-panda-x11-base/ and download the latest pre-built image available. At the time I’m writing this post I used the one available at http://snapshots.linaro.org/precise/pre-built/ti-panda-x11-base/5/ti-panda-x11-base-precise_linarotv-xbmc_20120729-5.html, and all I needed to do was to extract the img.gz file, and copy it with dd (sudo dd bs=4M if=ti-panda-x11-base-precise_linarotv-xbmc_20120729-5.img of=/dev/sdX).
Boot it up, and you should go directly to XBMC. Give it a try, check how well it’s playing the wide range of different video formats. Bugs are also expected and welcome, so please also make sure to open any bug you might find at https://bugs.launchpad.net/linaro-ubuntu and https://bugs.launchpad.net/ubuntu-omap4-extras-multimedia. We’ll keep improving the support over the next cycles, so also make sure to post which image you’re using when doing your tests.