Wednesday, August 24, 2005

MythTV - A User's Impression

After 3 weeks of weekends, I have a fairly functional MythTV box running. I jumped hurdle after hurdle: ungainly audio support, package managers, the pickiness of gcc 4.0, lack of support for Fedora Core 4, weak broadcast strength, out of spec cable data streams, uncooperative Comcast, odd video defects, and unwanted clipping. And now, I can watch and record beautiful high definition television, with crystal clear digital sound, all added at a cost of perhaps $275 to my existing desktop system.

I'm in a position to give informed opinions.

My time is not valueless; I want a working system. I appreciate the educational value of learning the ins and outs of Linux audio mixing, mysql database maintenance, parameters to chmod, but the amount of effort I was looking for was around the level of: insert tuner card, attach cables, insert CD, type in ZIP code, watch TV; not install Linux twice, scour the web for the contents of a .asoundrc file for a Chaintech AV710 sound card, spend two hours trying to figure out why the scan channels button is disabled, etc. Basically, all I want to do is watch some TV. I've a TiVo. It's based on Linux and similar to MythTV (minus the Hi-Def); it just works. My son will be using it before he's three. MythTV has to get to that point before I like it.

I have an El Gato EyeTV 500 HDTV tuner box for my Mac. It just works, or it would work if my computer was up to the task of decoding 1080i signals. It auto-tuned all my channels and displays them without distortion: even PBS-HD. It's text overlay is flicker free and beautiful. It's a Mac product, and acts as Mac users expect. When a channel is unavailable, it displays "No Signal"; it doesn't lockup for 20 seconds and not allow me to change channels.

From a commercial developer's point of view, I think there is a lot right and a lot wrong with the whole MythTV project. It is immature to waste time on such features as theme's. Choose an appearance, optimize the heck out of it, and live with it. Do not waste a minute of precious development time working out some lame bitmapped based system of pluginable skins. Figure out the core needs of the product, and focus on those. For instance, getting the auto-tuner to handle out of spec QAM streams. Also, what's the deal with having separate modes for watching live TV, and watching recordings? If I want to watch something being recorded right now, I shouldn't have to go one level up and three levels down from the live TV panel. Or how am I supposed to change the channel if something is wrong with the default channel? Do you really mean, I have to quit the frontend, quit the backend, and re-run the setup application because my default station isn't broadcasting? Watching TV is the core functionality of the application, get that right first.

To be fair, it is free. The images and sound, when they work at all, are fantastic. Once you do have it setup it's serviceable. If you are a cheap techno-geek with time on his hands, it's a gratifying project.