Another week has gone by and a few more hours of sleep have been grabbed at various intervals.
In the intervening time, work has continued on the interminable odyssey that is the MythTV box.
The major breakthrough came earlier this week when I finally got the IR blaster to talk to UPC‘s digital cable decoder. Unfortunately, it’s still a bit hit and miss, because the IR blaster‘s signals sometimes go astray.
For example, Amsterdam’s local station, AT5 is on channel 714 of UPC’s digital cable, so the blaster sends the digits 7, 1 and 4 with a 1.3 second interval between them. Sometimes (and the percentage is way higher than I would like), one of these digits gets lost somewhere, so the set-top box might get tuned to channel 71, 74, 14 or even 7, 1 or 4 if two digits happen to be lost.
When changing to a single digit channel, sometimes that solitary digit gets lost, so the channel doesn’t get changed at all. In the end, though, it doesn’t matter. Whether the channel doesn’t get changed at all or it does get changed, but to the wrong channel, you ultimately don’t get the recording you wanted, and that’s all that matters.
That’s not the only problem with the channels from the digital cable package, however.
The Dutch TV schedule grabber pulls its data from TVgids.nl, which works quite well for the common channels available in the analogue package. Unfortunately, though, TVgids.nl doesn’t carry programme schedule information for the less common channels, such as BBC3, BBC4 and The Travel Channel. Wah!
So, my next project will be to write a new grabber in Ruby that pulls programme data for these and the other digital-only channels from the most logical source, UPC’s own Chello site. This means scraping a lot of HTML and outputting XMLTV format files. I’ll probably start writing this in Ruby some time in the next few days.
The playback freezes are still with us, but they’re infrequent, so fixing them is a low priority. Skipping back five seconds is sufficient to restart playback, anyway.
I’m also working with the mod_mce author to fix the system freezes caused when trying to use a wireless Microsoft MCE keyboard. No luck yet, but we’re slowly localising the cause of the problem.
This week also saw the purchase of some more hardware. First of all, I bought a Logitech Harmony 885 universal remote control. It’s still in the packaging, however, as I haven’t had a chance to set it up. I’ll also need to borrow Sarah’s Windows laptop for that.
Secondly, I bought a Logitech Z-5450 5.1 speaker system. It’s not high-end audio by any stretch of the imagination, but it’s better than the TV speakers and connects directly to the MythTV box’s soundcard, which enables us to make full use of the MythMusic module to stream our OGG and MP3 filles from the server in the cellar. It’s great to have the ability to play music in the living-room again.
The Z-5450 also allows us to digitally connect our DVD player and set-top box, so when we want to play a disc or watch digital cable straight from the source, we get nice crisp audio to go with it.
Lastly, I bought another PVR-350 TV capture card, along with a dual tuner PVR-500 card.
The PVR-350 was to replace one of the two already in the box, which was suffering from diagonal, wavy lines in the picture. These were annoying me more and more, so I decided to replace the card.
Unfortuantely, the new PVR-350 had a newer, different tuner chip on it, which didn’t immediately work. When I finally found out how to get it to work, the new card turned out to suffer more from the wavy lines than the one it was supposed to replace.
As a result, I returned that PVR-350 today for another one, and purchased yet another one on top, in the hope of increasing my chance of bringing home a good one. Thankfully, one of them gave a perfect picture, so that one is staying and the other two are going back tomorrow.
As for the PVR-500, this also turned out to have newer tuner chips than older renditions PVR-500. Instead of Philips tuner chips, these have a Samsung tuner. A kernel patch was required to get this card to fire up properly, but once that was applied, it worked like a charm… and thankfully without any wavy lines!
So, the MythTV box is now a quadruple tuner affair, three of which receive analogue coax inputs, the remaining one getting its signal over S-Video from UPC’s digital set-top box. That means we can now record up to four simultaneous broadcasts whilst watching a previously recorded programme. Is that cool or what? Initial tests show that the 500 Gb SATA drive takes all of this in its stride.
As you can surmise from all of this, it’s been a week of devouring documentation, becoming extremely frustrated with poor quality hardware whose components seem to change on an almost daily basis, software experimentation, and trailing around the computer shops of Amsterdam, most of whom probably hate me by now, as I am constantly purchasing and returning TV capture cards.
PC hardware is utter shit, it has to be said. If my experiences earlier this year and in the last week are representative of the overall state of the industry, then a good third of all PC hardware sold is either substandard or just plain broken. And that’s before you figure in the frustration of building in hardware that Linux supposedly supports, only to discover that the manufacturer has changed the specs of the device without giving any outward indication of this on the packaging. The net result: hardware that doesn’t work and lots of wasted time and energy spent troubleshooting and shuttling back and forth by bike between home and the computer shops.
It’s been worth it, though. Our MythTV box is now very powerful and contains TV capture cards that actually provide a decent picture.
Once I get to grips with adding programme schedule information for the missing digital channels to the database, we’ll be able to schedule recordings from any channel, no matter how obscure. At that point, this box will be approaching its maximum utility; it’s already way beyond the functionality of any of the dismal commercial PVR appliances available in this country.