My DVD recorder that I have had for about 3 and a half years has been causing us a few problems when recording Freeview channels. We were getting breakthrough on the audio from the cable connection on the other Scart socket. This would get very distracting when watching a recording as there was this quiet, audible echo of another soundtrack.
A few months ago we picked up a usb TV tuner at Costco and that got me thinking about a PC based solution for the problem. About 9 years ago when we first attached a PC to our HiFi system, it was a very low specification and although we had a TV tuner card, the PC wasn’t powerful enough to record anything usable. As time went on, the PC has been replaced a few times and about 5 years ago we installed a piece of software called Meedio that we used to manage/play our video and audio files. There was also Meedio TV to record from TV, but we never explored it as the PC was still fairly low spec. At the time we chose Meedio, I had been aware of a Linux based program called Mythtv, but due to the fact that the PC was low spec and I was more familiar with Windows, this was discounted.
Roll forward to this year and I explored the options again. This time Mythtv sounded worth investigating, so I downloaded a copy of Mythbuntu, this is a Ubuntu Linux operating system bundled with Mythtv. I am currently using Ubuntu on a PC providing filtered internet access for the kids, so was more familiar with this than any other distribution. Using a 120GB disc in the old Dell desktop we replaced 18 months ago, I installed Mythbuntu and started trying it out. In the past few years Linux installations have become a breeze. My first installation was Slackware 2 back in 1995, and that was a command line experience that was challenging. Now, you just put the CD in and get lead through the install just like a Windows operating system installation. Anyway, after less than 30 minutes, I had the operating system installed, Mythtbuntu configured with my usb TV tuner and the first TV programs recording. I set the program guide to pick up from the cable guide and that gave me a few days available programming.
One of the first things I experimented with was changing the program guide to get its data from Radio Times using the xmltv program. I found configuration information for UK xmltv on the Mythtv website to help with that. Once I got this working, I then had 14 days of program guide which gave a lot more flexibility in programming. At this point I was only able to record Freeview channels.
Having proved that the concept worked, I set about gathering the required parts. The existing PC attached to our HiFi was an old HP Evo small form factor which would enable me to install 2 PCI cards to provide the connections to cable and aerial. I selected a Hauppauge Nova-T 500 dual digital card to allow recording/viewing of 2 Freeview channels. To connect to the cable box, I needed an analogue tuner with composite input, so a Hauppauge PVR 150 card was selected. As usual, my thoughts turned to Ebay as the source for all of the parts and quickly acquired the needed cards. While contemplating the plan for how I would build the system while providing the minimum downtime for the existing functions for the HIFi PC, I concluded it was best to get a second Evo SFF PC and build the system in that and then swap once it was setup and working. I bought a used 160GB disc off ebay (not a good idea – more later) and started to assemble the new system. Needless to say this was only a week before we went on holiday, so it wasn’t going to be in full operation before we went.
- HP Evo SFF PC (2.53GB Processor, 1.2GB RAM, on-board sound and graphics)
- Seagate 160GB IDE Hard drive
- Hauppauge Nova-T 500 Dual DVB PCI tuner card
- Hauppauge WinTv PVR-150 tuner card
Initially, I installed the PVR 150 in the bottom PCI slot and the T 500 in the top PCI slot, however the system would only boot sometimes that way around, so I swapped them over.
I installed Mythbuntu from the CD using the Mythbuntu installation guide for help. The last step of Mythbuntu installation launches the Mythtv backup setup. This is where you configure the cards for recording and the locations for storing your files. Mythtv software is split into 2 halves; there is the backup that controls the cards and the recordings and the frontend that displays the recordings and is the user interface. As I intended to possibley attach multiple frontends to this backend, I set a static IP address for my network during the configuration. As I’m in the UK I selected PAL-I for TV format and left the channel frequency table at try-all. Local timezone was set to auto. All the other settings in the general section was left as default.
Next setting up the cards. The order that the cards are added to the system detirmines the priority of the card. It took me a few goes to get the cards working and then get them in the right order ( I have currently have cards 7,8 and 12). First add the first channel of the digital card:
- DVB DTV Capture card (v3.x)
finish. Then add the second channel
- DVB DTV Capture card (v3.x)
finish. Then add the analogue card:
- IVTV MPEG-2 encoder card
finish. Once the cards are added, press Esc to return to the main menu.
Setting video sources. I created a source called Cable and another called Freeview. Both were initially set to use the transmitted guide only (EIT). Once the sources are added, press Esc to return to the main menu.
Setting input connections. This is where you connect the card to the source. For DVB adaptor0/frontend0 I selected Freeview as the source and selected scan for channels. This then scanned and populated the channel table with the Freeview channels. I set DVB adaptor1/frontend0 to Freeview as well, but didn’t re-scan for channels. MPEG /dev/video0 Composite1 was set to Cable source. I scanned for channels but shouldn’t have.
The storage directories can remain the defaults for the moment.
The backend is basically setup at the moment. Press Esc to exit the backend setup menu and allow mythfilldatabase to run.
Run the Mythtv Frontend and hopefully you will have some channels and be able to change between them.
The next thing I did was to configure the program guide to get its data from Radio Times. As mentioned above, I found the configuration information for UK xmltv on the Mythtv website helped get this working. I went back into the Mytv backend setup and configured mythfilldatabase to run daily early in the morning. I found if I ran mythfilldatabase from the command line, it worked fine, however if Mythtv ran it then an error occured. It failed with error 512. I found the following on the unbuntu forums http://ubuntuforums.org/showthread.php?t=624517 which gave the the answer. The configuration was setup in my account, but not for the mythtv account that was running the software. The solution that I chose was to link the configuration files in my account into the mythtv account
- cd /home/mythtv/.mythtv
- sudo ln -s /home/ian/.mythtv/Cable.xmltv
- sudo ln -s /home/ian/.mythtv/Freeview.xmltv
Changing the permissions on my files so that mythtv could read and write to them resolved the mythfilldatabase error. There was another error when filling the database:
XMLTV requires a Date::Manip timezone of +0000 to work properly.
I found the answer to this bug here http://www.artificialworlds.net/freeguide/FAQ/DateManipError and following the instructions downloaded the Debian packages to resolve this problem. Finally to resolve a permissions problem with the cache file, (~/.xmltv/cache) I changed permissions to write for other. At this point xmltv would download the guide information automatically from Radio Times every morning.
This was the state the system was left in when we went on holiday. It was scheduled to record all the Freeview programs we wanted while on holiday in parallel with the DVD recorder. When we came back it had performed perfectly, so it was time to swap it into full use.
That’s for another post.