Building TVHeadend from source

This is a brief guide demonstrating downloading and building (and optionally packaging) the TVHeadend source from GitHub.

The instructions are aimed at people running Debian and variants (i.e. Ubuntu) Linux distributions.

Instructions for other distributions may be found in the TVHeadend wiki at

The instructions are also specifically tailored to produce a build of TVHeadend that is identical to the one made available via the TVHeadend repositories so contains more dependencies than the official guide mentions.

Further more, this builds the very latest (read: unstable) code from GitHub. If you want to build the latest stable version then use the correct git command as detailed below.

Installing dependencies

To download the TVHeadend source code and build a working installtion, the following packages are required;

sudo apt-get install git build-essential pkg-config libssl-dev bzip2 wget libavahi-client-dev zlib1g-dev libavcodec-dev libavutil-dev libavformat-dev libswscale-dev libavresample-dev python gettext cmake libdvbcsa-dev liburiparser-dev


sudo aptitude install git build-essential pkg-config libssl-dev bzip2 wget libavahi-client-dev zlib1g-dev libavcodec-dev libavutil-dev libavformat-dev libswscale-dev libavresample-dev python gettext cmake libdvbcsa-dev liburiparser-dev

Downloading the source code

To download the latest stable (4.0) source code then running

git clone -b release/4.0

If you want to get the very latest (4.1) source code (which is considered unstable) then running

git clone

Configuring the build tool

The command below configures the build tool to create a TVHeadend installation that is identical to that available via official sources. If you want to change where TVHeadend is installed then you need to amend the configuration line below before building TVHeadend.

From the TVHeadend source directory, run;

./configure --build=x86_64-linux-gnu --prefix=/usr --includedir=${prefix}/include --mandir=${prefix}/share/man --infodir=${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-silent-rules --libexecdir=${prefix}/lib/tvheadend --disable-maintainer-mode --disable-dependency-tracking --enable-libffmpeg_static --enable-hdhomerun_static --enable-dvbcsa --enable-bundle --arch=x86_64

Building the source code

make -j 4

Installing the binaries

Once the source has built successfully, you can install the package by using the following command. If you have previously installed TVHeadend from the repositories then this will overwrite the currently installed version (don’t worry, if a new version is made available via the repositories you can always install the newwer package over the top)

sudo make install

If you want to create a redistributable .deb package see the ‘Packaging TVHeadend for distribution‘ guide.

Tagged with: ,

Two Factor Authentication (2FA)

What’s this 2FA?

In light of the recent Heartbleed vulnerability in the OpenSSL cryptographic library (which allowed unscrupulous people to capture usernames, passwords and other sensitive information from seemingly secure websites – all these years of saying “look for the padlock” when there was actually an unintentional back-door) I wanted to draw your attention to a feature of many modern websites that adds an extra layer of security in an age where we are entrusting more of our personal and financial data to the internet.

Two-factor authentication (or 2FA for short) prompts you to enter a unique, random code in addition to your password when logging in – the advantage of this is that if your password is compromised, the “hacker” would need access to your chosen 2FA-enabled device (e.g. a smart phone or desktop PC) as well to do anything meaningful.

There are a couple of options for setting up 2FA, the most secure is by running an app on your smart phone, there are variants for the major platforms, but you can also run a 2FA client on your desktop operating system, again there are variants for Mac, Linux and Windows to suit your needs.

2FA Clients

The most popular variant of a 2FA client is Google Authenticator, most widely used to secure access to Google’s myriad of services, it has been embraced by other services as a way of adding that extra layer of security to sites. The “Authenticator” client is available for iOS, Android, Windows Mobile and Blackberry via their respective app stores.

If you don’t have a smart phone, or want the convenience of a desktop variant, you will be well served by JAuth (Mac, Linux, Windows – as the name suggests, the “J” in JAuth means you’ll need a recent Java Runtime Environment to run the application – most OS’s should have a JRE installed, if not, visit to download/install). An alternative Windows-only client, which has the advantage of supporting multiple sites, is the excellent MOS Authenticator.

Regardless of your platform choice, be it mobile or desktop, Mac or Windows, the basic premise of how a 2FA client is the same. More details in the next section.

Configuring Your 2FA Client

So you’ve decided how and where you want to run your 2FA client? OK, here’s a quick tutorial on how to configure it – as mentioned above, the basic setup of a 2FA client is the same for all variants, in this example I’ll use MOS Authenticator to set up 2FA on

  • Navigate to the settings option in your online account


  • Locate the security settings in your online account


  • Click on the button/link to enable 2FA – your site should generate a QR code and/or the secret key required to set up 2FA


  • Open your 2FA client (MOS Authenticator pictured) and select/click the option to add a new site


  • Give the site a name and copy/paste the secret key from the site you want to protect into your 2FA client


  • Click on “Add” or similar to save your settings. Your 2FA client will begin generating codes which change every 30 seconds or so. It is important that the clock on your device is correct or you may get “token failure” errors from your site


  • Double click or copy the generated code from your 2FA client to the clipboard


  • Paste the code into the site you want to enable 2FA on then click on “OK” or “Verify”



  • The site will check the code is valid and tell you the outcome




  • Configure your 2FA-specific options. Remember, the purpose of 2FA is to prevent a hacker from causing you issues if your account is compromised, so whilst it may seem inconvenient entering a code for certain transactions, it might just save you a headache in the future


And that’s it. In practice, it takes about 2 minutes to set up 2FA.

Tagged with: , , , , , , , ,

Ovivo Drops Ad-Funded Model

UK MVNO Ovivo Mobile‘s has posted an announcement from CEO Dariush Zand explaining the companies decision to drop (for now?) it’s ad-funded model. The network, whose backhaul is provided by Vodafone, offered a calls, text and data bundle for the cost of a SIM card (£5) in return for in-line advertising during your browsing session. CEO Mr Zand explains that a small number of fraudulent users have abused the system, ordering and swapping between multiple SIM cards and bypassing the company’s advertising system effectively cutting off their revenue stream.

He goes on to say “Whilst the number of these fraudsters is small, they have sought to attack the core business model that Ovivo practices and undermine our business.”

The post (also emailed to Ovivio Mobile customers) indicates that the ad-funded model may return at a later date (presumably when a more robust advertising scheme is developed) but for now, they are offering a package similar to that of rival GiffGaff where for a low monthly topup you receive a number of texts, minutes and data allowance, whilst still offering some of the services for free for existing customers.

Ovivo Mobile still offers excellent value for money, for example, £10 gets you a data-enabled SIM card, preloaded with £10 worth of credit, which will buy you two months of data usage (1Gig/month) plus you get 512mb/month for free – making a total of 3Gig of data over the two months.

For further information on Ovivo Mobile’s offerings, click here for the mobile plans and here for the data plans.

RaspberryPi to be Manufactured In UK

The Raspberry Pi foundation today announced that it had partnered with Farnell, one of it’s major distributors, and Sony Technology UK to manufacturer the Raspberry Pi in the UK.

Until now, cost of manufacturing in the UK has been prohibitively expensive and meant the first batch of boards were manufactured in China and shipped to the UK.

The new manufacturing agreement will see a new revision RaspberryPi being manufactured and distributed direct from the UK, which should help ease the long delays retailers are facing in sourcing the micro computers with the initial run seeing the facility in Pencoed, Wales, pumping out 30,000 units a month.

Finally a great British invention can proudly display the “Made in the UK” logo!

4G Everywhere

Everything Everywhere, the parent company of telecoms giants Orange and T-Mobile, has been granted permission by OFCOM, the UK regulator, to go-ahead with its plans to run the UK’s first 4G networks using it’s existing 1800Mhz spectrum.

Much to the annoyance of it’s rivals (both O2 and Vodafone have voiced their concerns over OFCOM’s decision), this will give Everything Everywhere a head start on the 4G market, whilst other operators will need to await the spectrum sale of airspace freed up by the closure of analogue TV transmissions around the UK.

Everything Everywhere is expected to have its 4G network up and running by September 2012, but with a distinct lack of 4G devices (mainly due to 4G not having any ratified standards to be adhered to) it is unlikely that the average consumer will see the benefit in the short term.

iPod nano set for Wi-Fi update | T3

iPod nano set for Wi-Fi update | T3.

Tagged with: , , ,

RDP in HTML5? Click Here…

There are many advantages to being able to access your home computer remotely, namely having access to your usual suite of programs and documents, but often, gaining access is harder than it needs to be, usually because of blocks put in place on shared/corporate networks to stop you from being able to run the remote desktop client to get access to your machine.

This is where Spark View steps in – I won’t pretend to understand all of the technology behind this site, but in it’s simplest form, Spark View provides a HTML5 version of the remote desktop client, which means you can access any machine running a standard RDP protocol with nothing more than an internet connection and a modern browser (Chrome, Firefox and IE are all well catered for).

Simply visit and enter the details (IP/domain name, username and password) and click on the “Connect” button – you will shortly be greeted by your desktop right there in your browser.

Have a look at the site as there are some advanced features (such as drag ‘n’ drop between browser and desktop, and support for sound) but each feature is limited to certain browsers.

Tagged with: , , , , , ,

Another Slice of Pi?


On the 24th of August, the RaspberryPi foundation announced that it had struck a licensing deal to allow owners of the RaspberryPi devices access to additional premium licenses to decode both MPEG2 and VC-1 encoded video using the onboard GPU.

So-called “hardware acceleration” offloads the stress of decoding video from the relatively low-powered CPU to the much more capable GPU.

The RaspberryPi was released without the relevant licenses as it was deemed that the additional cost was too much to add to the overall cost of the unit, which the foundation had marketed at the educational sector. Little did it know that there was an army of technology folk out there itching to get their hands on an RPi to build a low-powered, low-cost media streaming device.

The additional licenses are priced at £2.40 for the MPEG2 license and £1.20 for the VC-1 license via the official RaspberryPi store

Users will need to establish their hardware serial number (information below) which will tie the license(s) to that particular board, an attempt to prevent piracy and uphold the license agreement.

To find your serial number, type cat /proc/cpuinfo at the command line as shown below:

pi@raspberrypi:~$ cat /proc/cpuinfo
Processor : ARMv6-compatible processor rev 7 (v6l)
BogoMIPS : 697.95
Features : swp half thumb fastmult vfp edsp java tls
CPU implementer : 0×41
CPU architecture: 7
CPU variant : 0×0
CPU part : 0xb76
CPU revision : 7

Hardware : BCM2708
Revision : 1000002
Serial : 000000000000000d

Tagged with: , , , , , , ,