XBMC compiled with Crystal HD support is now available from unofficial nightly builds

TheQuestor from xbmc forums has announced that his xbmc for osx nightly builds now includes crystal hd support!

Forum post found here.
And downloads found here.

You will still need to compile, or download a precompiled version from somewhere, crystal hd lib and kext to get it working. Xbmc will detect the presence of said lib/kext and enable crystalhd rendering as an option if found.

Follow this post from the xbmc forum on how to use the nightly build together with the atv-xbmc-launcher. You will have to install the crystal hd lib/kext as well to enable the crystalhd rendering option from within xbmc.

Enjoy Apple TV with 1080p support :)

Tags: , , , , , , , , , , , , , , ,

Compile xbmc with broadcom crystalhd support on linux

Broadcom CrystalHD is a Mini-PCIe expansioncard to make your box do hardware decoding of HD video material (h264, vc1++)
Got a old AppleTV which you dont use? Buy a CrystalHD chip on ebay for 30 dollars, and it will play 1080p for you :)

Install Ubuntu 8.04 Hardy on your box, if you are going to use an AppleTV you can follow the guide here:
http://dingleberry.me/2009/11/ubuntu-karmic-koala-on-appletv-with-broadcom-crystal-hd-decoder/

Download the xbmc crystalhd branch and the lib directory from the xdmx branch which has the necessary crystalhd include files:
svn co -r 22347 https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/xdmx/XBMC/xbmc/lib/
svn co -r 25101 https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/crystalhd

prepare the system for crystalhd support:
mkdir /usr/include/crystalhd
cp -a lib/crystalhd/include/* /usr/include/crystalhd
cp /usr/include/crystalhd/windows/bc_drv_if.h /usr/include/crystalhd/bc_ldil_if.h

Edit /usr/include/crystalhd/bc_dts_types.h and comment out line 59 so it looks like this:
//typedef void VOID;

Copy the crystalhd include files to the crystalhd branch source:
cp -a /usr/include/crystalhd crystalhd/xbmc/lib/

Download the bcm70012 source and build the module:
wget http://www.norco.net.cn/UpLoadFile/Driver/bcm70012_linux_01142009.rar
unrar e bcm70012_linux_01142009.rar
tar xf bcm70012_linux_01142009
dpkg -i bcm70012kmod-source_0.9.30_all.deb
apt-get -f install
dpkg -i bcm70012kmod-source_0.9.30_all.deb
cd /usr/src/
m-a -t a-i bcm70012kmod
cd -

Install the gstreamer plugin from the HP mini 110 distro (the file came with the driver download in the step above)
dpkg -i --force-all gst-broadcom-70012_0.9.30_lpia.deb

Now follow the steps from the README.ubuntu file inside the crystalhd source:
sudo aptitude install subversion make g++ gcc gawk pmount libtool nasm automake cmake gperf unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libfribidi-dev liblzo2-dev libfreetype6-dev libsqlite3-dev libogg-dev libasound-dev python-sqlite libglew-dev libcurl3 libcurl4-openssl-dev x11proto-xinerama-dev libxinerama-dev libxrandr-dev libxrender-dev libmad0-dev libogg-dev libvorbis-dev libsmbclient-dev libmysqlclient-dev libpcre3-dev libdbus-1-dev libhal-dev libhal-storage-dev libjasper-dev libfontconfig-dev libbz2-dev libboost-dev libfaac-dev libenca-dev libxt-dev libxtst-dev libxmu-dev libpng-dev libjpeg-dev libpulse-dev mesa-utils libcdio-dev libsamplerate-dev libmms-dev libmpeg3-dev libfaad-dev libflac-dev libiso9660-dev libass-dev libssl-dev

On 8.04 and older versions, libmms is outdated and thus XBMC will not compile properly.
In this case you will have to manually compile the latest version.
wget "http://launchpad.net/libmms/trunk/0.4/+download/libmms-0.4.tar.gz"
tar zxvf libmms-0.4.tar.gz
cd libmms-0.4
./configure --prefix=/usr
make
sudo make install

After all deps has been installed and libmms has been compiled and installed you are ready to compile xbmc. cd to the crystalhd source and do:
./bootstrap
./configure
make
make install

Finito! :)

POST-install tweaks:
Enable Pixel Buffer Objects
Start xbmc without loading Gnome
And some more AppleTV specific stuff:
Set fixed cpu frequency
Various fixes for Ubuntu on ATV

Tags: , , , , , , , , , , , , , , ,