What’s all this then?
In the UK (and many places throughout the world) there are digital TV platforms available via satellite (or sometimes Terrestrial transmitters) which allow you to receive their programming with no subscription using standard DVBs/DVB-S (or DVB-T) equipment. Many set top boxes that can access these platforms are ‘closed’ and do not offer much in the way of choice, add-ons or upgrades not to mention the fact many have no High Definition capability. This is a guide to how to turn your linux box into a fully fledged HD digital TV reception platform with recording, pausing, rewinding of live TV as well as many other features such as commercial break removal, access to interactive content and electronic program guide (EPG). You can watch TV (live or recorded) from any networked PC in your house, as well as run a web interface to allow you to schedule, view, watch and delete recordings from any PC in your house (or to the web if you have the bandwidth and a way to forward your web server IP to the public internet). While this guide is based around the UK Freesat platform, using a different tuner card (such as a DVB-T card instead of DVB-S) it can easily be adapted to Terrestrial broadcasting.
Not only do you get loads more features, but you get more channels than the UK Freesat platform, as well as the cool factor of having such a awesome piece of technology at home. The system can easily be expanded by adding multiple DVB-S cards so you can do things such as watching one live channel and recording another, you can add BBC Iplayer into the mix or a multitude of radio stations. You can even have the system keep your PC’s clock synchronised to the correct time if you like!
A quick intro to MythTV, the feature rich PVR
Think of Mythtv as a digital box in two parts. The ‘backend’ which handles satellite reception, recording, transcoding, playback, live Tv tuning, scheduled jobs (such as commercial break/advert flagging & removal). Then there’s the ‘frontend’ which is like the TV output of the digital box – it connects to the backend to allow you to watch content the backend sends it, browse EPG, change settings, etc etc. The frontend and backend can be seperate systems, the same system, or any combination of systems for the ultimate in flexibility and user choice!
There is a MySQL server which stores all the program data, configuration settings and allows the frontend and backend to share data. The benefits of this arrangements are many, but the most prominent is that you can watch content from any ‘frontend’ on your network – be it the same machine as the backend, or a PC (linux or windows) elsewhere on your network. You can have as many frontends as your network bandwidth allows, and you can have multiple backends working together to form a media server cluster. Macs on your network can also watch content via the Mythweb interface
What you will need
I’m being cheap and using a budget DVB-S card, the ‘Plus TV’ card from Maplin. Budget DVBs card means the mpeg decoding happens in your CPU and not on the card. This card is supported in video for linux, even though the LinuxTV page doesn’t specify it. This card is happy to receive BBC HD, ITV HD and Luxe HD (Though you will need to check out my ITV HD howto to set up ITV HD). If you get a card such as the WinTV Nexus, the MPEG-2 decoding is done ‘on card’ instead of in your computers CPU which means your system has less load while watching or recording TV, however these cards tend to be a bit more expensive. This setup should work with DVBS/S2 cards as well for other DVB HD services (although none are available yet in the UK) and also work with any linux distribution running a recent kernel. If you are not using Ubuntu (or are running an earlier version of Ubuntu) you will need to install mythtv, mysql, apache, php and mythweb yourself then rejoin this howto at Part 2.
I use Mythweb to access my EPG and start/stop recordings from any PC in the house, I find it easier for searching the EPG and planning what I want to record from the comfort of my laptop while in bed. Mythweb can also stream recordings to most media players, so you are not tied in with watching only in the MythTV ‘frontend’. The MythTV ‘backend’ can also serve recordings or live tv to other Pc’s on your network running ‘mythfrontend’, not just the machine your DVB card(s) are installed in. MythTV can also work with every other DVB-s channel out there if you wish to get, for example, a free to air German DVB-S package; simply re-point your satellite dish at the correct satellite, configure MythTV’s ‘channel plan’ and you are good to go.
The Install
I’m assuming you already have your Ubuntu installation up and running. First I ensure that I am using a fast APT-GET mirror and that the system is up to date. To get updated, bring up a command shell (Applications->Accessories->Terminal) and run the following:
sudo apt-get update
sudo apt-get upgrade
Once that has completed you should be ready to install the components for MythTV and Mythweb:
sudo apt-get install mythtv mythweb
This process will ask you for a password for the MySQL root user which you need to remember. If you need to install a web server this install process will do this automatically for you. The process will also ask you if you wish to allow remote connections to your backend, you should answer yes here as you want to be able to watch TV or recordings from other systems on your network. Any other questions during install (other than the password questions) can be answered using the default answer (eg, just press enter). The process should also create a Mythtv database user within MySQL, usually with either have the same password you set the MySQL root password to during this installation, or a random one. Either way, it should be automatically set in MythTV for you.
If you have a secondary drive you want to use for MythTV (which I recommended – I personally use a secondary 1Tb SATA on SATA channel 2 so that watching TV or recording programs has less effect on my ‘backend’ system usability), then you need to create the MythTV directory structure on your second drive. On my MythTV ‘backend’ the mount point ‘/media/store’ is the second drive, so please replace that part in the commands below with the correct path for your system. You can, of course, skip this step if you only have one hard drive in your ‘backend’ system:
sudo mkdir /media/store/mythtv sudo cp -rp /var/lib/mythtv/* /media/store/mythtv/ sudo chown -R mythtv:mythtv /media/store/mythtv
That is the software installation and basic preparatory work completed. Join me in Part 2 to get into the MythTV setup and mvoe a step closer to watching Tv and HD TV!
[...] is part 3 of the MythTV freesat howto, following on from Part 1 and Part 2 posted earlier on this [...]
[...] article is a follow on from Part 1, where I guide you through some of the features of this DVBs/DVB-S MythTV DVR/PVR system and the [...]