You are hereOther / Configuring your Apple TV and XBMC to use the Crystal HD hardware decoder
Configuring your Apple TV and XBMC to use the Crystal HD hardware decoder
Once your Broadcom Crystal HD hardware decoder is installed in your Apple TV there are a few minor changes required before you can enjoy HD quality movies with your ATV. All the information found here can easily be found using google but I could not find one single page that described the entire procedure so here it is.
Before you can proceed with the installation of the software required for the Broadcom Crystal HD hardware decoder you need to install "Launcher" and enable SSH on your Apple TV, instructions can be found at code.google.com/p/atvusb-creator/, I'm not 100% sure if I installed XBMC before I did everything below so to be sure, go ahead and install XBMC from the Launcher menu that is added to the ATV menu after successfully installing Launcher.
Software used in this example(stolen from it's rightful owners) - These are probably old by now so it might be a good idea to pay the creators a visit to get the latest versions.
www.mattiasholm.com/system/files/turbo_atv_enabler.bin - Downloaded from 0xfeedbeef.com/appletv/
www.mattiasholm.com/system/files/crystalhd-for-osx-1.0.3.zip - Downloaded from code.google.com/p/crystalhd-for-osx/
www.mattiasholm.com/system/files/xbmc-r31068-trunk-x86.dmg - Downloaded from mirrors.xbmc.org/nightlies/osx/
Assuming that you have SSH enabled your atv, login to it and download the files mentioned above. Once downloaded (for the non *nix initiated, use wget http://somehost.domain/file.ext to download files) run the following commands to enable your Broadcom Crystal HD hardware decoder.
sudo -s
Copy kext and libs to where they are expected to be and set correct permissions
cp -r BroadcomCrystalHD.kext /System/Library/Extensions/
chmod -R 755 /System/Library/Extensions/BroadcomCrystalHD.kext
chown -R root:wheel /System/Library/Extensions/BroadcomCrystalHD.kext
cp libcrystalhd.dylib /usr/lib/
chmod 755 /usr/lib/libcrystalhd.dylib
cp bcmFilePlayFw.bin /usr/lib/
Copy the turbo_atv_enabler to sbin and set permissions
cp turbo_atv_enabler.bin /sbin/
chmod 755 /sbin/turbo_atv_enabler.bin
Add the turbo enabler to /etc/rc.local
echo /sbin/turbo_atv_enabler.bin >> /etc/rc.local
echo /sbin/kextload -v /System/Library/Extensions/BroadcomCrystalHD.kext >> /etc/rc.local
if rc.local did not exist, set permissions and ownership, it will not hurt to run this even if the file was already there.
chmod 755 /etc/rc.local
chown root:wheel /etc/rc.local
Now lets try loading our kext
/sbin/kextload -v /System/Library/Extensions/BroadcomCrystalHD.kext
Run "dmesg" and you should get something like
BroadcomCrystalHD::start
allocated 18 elem
Starting BCM70012 Device
clock is moving to 175 with n 35 with vco_mg 2
CStopping BCM70012 Device
BroadcomCrystalHD: Found HW and started driver SW.
If you did not get output similar to that something might be wrong.
Last but not least, we need to install a version of XBMC that supports the Crystal HD
Mount the XBMC dmg
hdid xbmc-r31068-trunk-x86.dmg
Remove the currently installed XBMC
rm -rf /Users/frontrow/Applications/XBMC.app
Copy the mounted XBMC image content to /Users/frontrow/Applications/XBMC.app
cd /Volumes/XBMC
mkdir /Users/frontrow/Applications/XBMC.app
tar cf - * | ( cd /Users/frontrow/Applications/XBMC.app; tar xfp -)
Now start XBMC on your ATV, navigate to "System", "Playback" and make sure that "Allow hardware acceleration (CrystalHD)" is available and enabled.
Post new comment