Evo Technologies, Inc.

Documentation‎ > ‎

How to compile and install the Broadcom Crystal HD Hardware Decoder (BCM70012/70015) driver on Ubuntu.

Last updated: Aug 30, 2012

This instruction referred to http://code.google.com/p/indicator-crystalhd/wiki/CrystalHDHowTo and fixed some issues.

If you don't want this annoying driver installation and will use XBMC, we recommend you to use the OpenELEC intel build 32-bit with ECOPC N.1A/LE! The OpenELEC Intel Build (http://openelec.tv/get-openelec) includes built-in Broadcom Crystal HD hardware decoder driver and it runs out-of-the-box without driver installation.

1. Install required files

sudo apt-get install checkinstall git-core autoconf build-essential subversion dpkg-dev fakeroot pbuilder build-essential dh-make debhelper devscripts patchutils quilt git-buildpackage pristine-tar git yasm zlib1g-dev zlib-bin libzip-dev libx11-dev libx11-dev libxv-dev vstream-client-dev libgtk2.0-dev libpulse-dev libxxf86dga-dev x11proto-xf86dga-dev git libgstreamermm-0.10-dev libgstreamer0.10-dev automake libtool python-appindicator

2. Ge the source
Get the driver source code from the git repository.

git clone git://git.linuxtv.org/jarod/crystalhd.git

3. Fix the source
Fix the code for use in Ubuntu 11.10 and later.

insert #include <linux/delay.h> to <crystalhd dir>/driver/linux/crystalhd_flea_ddr.c

insert #include <stdint.h> to
<crystalhd dir>/linux_lib/libcrystalhd/libcrystalhd_if.h

4. Compile driver, install libraries, and load driver
Use make command to compile driver. If you have multiple core processor then use the “-j2″ or “-j4″ option (2 or 4 is the number of cores). This will speed up the make process.

cd crystalhd/driver/linux




sudo make install

Install the libraries.

cd ../../linux_lib/libcrystalhd/

make -j2

sudo make install

Load the driver.

sudo modprobe crystalhd

Reboot your system, then check if 'crystalhd' is listed in the output of the following commands.


dmesg | grep crystalhd

5. CrystalHD indicator installation
Download CrystalHD indicator from http://code.google.com/p/indicator-crystalhd/downloads/list
Then extract the archive, then copy "<indicator-crystalhd dir>/usr" into the root.

cd <indicator-crystalhd dir>

sudo cp usr / -R

6. Gstreamer-plugin installation

Compile the plugin.

cd ../../filters/gst/gst-plugin/


make -j2

sudo make install

Copy the plugin files.

sudo cp /usr/lib/gstreamer-0.10 /usr/lib/gstreamer0.10/ -R

Run the plugin scanner.


7. Enabling Adobe Flash video acceleration
Install or replace the flashplugin with the most recent one from adobe.

sudo apt-get install adobe-flashplugin

Generate the 'mms.cfg'.

sudo mkdir /etc/adobe

sudo sh -c 'echo "EnableLinuxHWVideoDecode=1\nOverrideGPUValidation=true" > /etc/adobe/mms.cfg'

8. After kernel update
Reinstall the driver.

cd crystalhd/driver/linux

sudo make install