mythtv + hdtv
Wednesday, March 1st, 2006A cool project that has been taking some of my time recently is building a MythTV machine. I have a little 3.0GHz Prescott machine in my living room which is responsible for the task of recording and playback of TV streams.
My setup is quite elegant. I have a Motorola DCT 6200 which supports firewire connected directly to the PC. This means that an exact copy of the MPEG-2 stream that is sent to the digital terminal is preserved on the hard drive of the PVR. MythTV supports changing channels and all the goodies that are necessary to make it all work.
HDTV requires a significant amount of storage. At ~20Mbit/s, an hour of HD video is about 9GB. As a result I have added a significant amount of storage to my PVR — 450GB to be exact. This is enough to collect and archive a good amount of content.
Decoding HDTV is quite processor intensive. As my Geforce 4 Ti4400 is not fast enough to decode HD resolution MPEG streams in realtime, I am left with software decoding. It takes approximately 2.8GHz of processing power to pull this task off in realtime. I can definitely hear my little machine ramping up the CPU when watching an HD feed.
MythTV is still a bit immature in terms of polish — it took a significant amount of tweaking to get it to pass the infamous wife test. Due to the potential usefulness of having a PVR, she has been particularly patient while I work to resolve a number of crashes, corrupted recordings, and other problems. The latest release (0.19) of MythTV has solved a few of our problems, but still suffers a horrible death when you… pick a channel that we are not subscribed to.
Some interesting bonuses when using MythTV over other products is that you can have multiple frontend machines for a single backend. For instance my wife’s G4 Mac Mini is able to stream LiveTV over the ethernet and play it back at her desk upstairs. Sadly, the 1.4GHz processor is unable to decode the HD channels in realtime though. Another interesting feature is the integration of MythTV with my Asterisk PBX - I have connected MythTV as a SIP phone to my PBX, and it displays an incoming call to the TV when one arrives. This can be very useful as it can save you from having to get up off of the couch when it is someone that you don’t want to talk to.
