If you've been thinking about getting a personal video recorder to improve your TV viewing experience, but are not sure where to begin, perhaps I can help you out. I have recently gone through the process and I think you can benefit from it.
The first thing you should know is that you have options, depending on your technical expertise and requirements.
When you think PVR, chances are you think TiVo. After all they the "big cheese". They build very easy to use and powerful devices. If you don't want any hassles buy one of these devices. The up front cost is low, just realize that you are going to be paying a monthly fee (currently $12.95) for the rest of the time you own the device. Replay-TV is another maker of similar devices, I don't really know much more about them though.
If you don't want a TiVo you can try Microsoft's Media Center. I don't have a lot of details about them, but you can buy a PC from the usual vendors (Dell, HP, Compaq, or Sony) that runs the Media Center version of Windows XP. This is a decent option if you don't want any hassles. It works out of the box and phone support is available if you need it. It is more expensive initially and I don't know if there is are any recurring charges.
The last option and the option I chose is to use Linux. There are two main software choices available that will give you a menu driven, "TiVo" style PVR, MythTV and Freevo. I opted for MythTV as it had more of the features I was looking for in a PVR.
If you are going to go the Linux route here are some things you may want to consider when determining which software package is right for you.
1.) First go to both websites MythTV and Freevo and compare the features offered by each system. I'm not going to list them here because both project are under development and making improvements regularly.
2.) Realize that MythTV is written in C++ so it will be faster, but slightly more complicated to work with and build. Freevo is written in Python which doesn't need to be compiled but can be slightly slower than MythTV.
3.) Look for available binary distributions available with your favorite Linux distro. They are available with some distro's and can save you a ton of time.
4.) Look for support for your TV Tuner Card. (See more below)
There is no right or wrong choice, it just depends on what suites your needs better.
Notes on Tuner Cards
There are a number of Tuner cards that will work under Linux. They can be classified by their abilities: input/tuner, encoding, decoding, output. Minimally you will need a tuner / video input card. Some video cards have these built in, if yours doesn't then you will need to buy an additional PCI or USB card to do this. Better cards offer more types of inputs (Composite, S-Video, Coaxial), better analog to digital converters, and higher data rates. In addition these card may contain an encoder chip. This chip will be used to encode the video into a specific format (MPEG2/4 commonly) in hardware, rather than requiring your CPU to do it.
If your video card does not have a TV output, then you will need to get a tuner card that also has TV out on it. Optionally the output card may decode compressed video (MPEG2/4) in hardware relieving your CPU from the task.
The more of these features you require the more expensive your tuner card will be. For more on tuners see the Wikipedia.
I went with the PVR-350 from Hauppauge. It has a input and output, plus a MPEG2 encoder / decoder in hardware.
My system consisted of an Pentium 4 2.4GHz processor, 512 MB of RAM, a 250GB hard disk, and a wifi card. This is probably overkill since the tuner card has a built in MPEG encoder / decoder, but I'm being cautious since this is the first one I'm building.
That's it for now. I'm going to post a few more articles later this week. Check back for more info.