/var/opinion - The Ultimate Linux PVR

After much wasted time trying to re-create TiVo, it turns out the real thing beats all.

You may recall that, quite some time ago now, I started a MythTV project. The idea was to create a Personal Video Recorder (PVR) based on Linux that could handle HDTV. I mistakenly assumed that it would not only be possible to create the ideal HDTV PVR on Linux, but also that it would be a relatively simple task for a hacker like myself. The project consumed a great deal of my time for a few months, most of which turned out to be wasted.

The bottom line is that cable companies make it nearly impossible to get decent quality HDTV except through their own cable boxes. HDTV is under the control of Digital Rights Management (DRM) robot overlords, and the overlords have spoken. They will not risk the possibility that we might record something like an HDTV movie on our personal computers. Theoretically, at least, it's not entirely impossible to route around the roadblocks. You may be able to get a cable box with an output you can capture (like IEEE 1394, for example). But, you won't be able to decode HDTV cable signals from the coax, and as far as I can tell, it isn't yet possible to connect the HDMI output of a cable box to a PC in a way that is useful to Linux.

If you're satisfied with standard definition TV, MythTV will do the job for you. I had few problems getting MythTV and a variety of capture cards working. I tried the Hauppauge WinTV PVR-500, the pcHDTV HD-5500 and the DVICO FusionHDTV5 Gold. They all worked more or less, but they were all overkill. The HDTV cards were overkill, because I could use them only in standard definition. The PVR-500 was overkill, because the best configuration used the SDTV output of the cable box, and there was no need for the two tuners on the card.

MythTV is not all that hard to set up, but it makes you work harder than you should. For example, you need to change some scan settings to get rid of blinking on-screen caused by the closed-caption signal. This sort of thing should be automatic, and it probably will be eventually (if the MythTV folks haven't already done this since I tried it).

If you don't want to get your hands so dirty with MythTV, the commercial product SageTV (www.sagetv.com) is a very nice alternative. Whichever you use, stick with a cheap Hauppauge card like the WinTV PVR-150. It is really all you need if you are going to combine your PVR with a cable box. The only reason to get a dual-tuner card is if you want to use it with unscrambled cable or want to use over-the-air TV.

The first alternative I tried was an HDTV-capable cable box with built-in PVR. What a disaster. They're not intelligent at all about getting the equivalent of a TiVo season pass, where the PVR records shows by name instead of specific time slots. The fast-forward and rewind features lag seconds behind when you press the button, and it's almost impossible to navigate through a recorded show. I always would overshoot the destination and have to watch more of the show than I wanted.

I finally invested in the Linux-based TiVo Series 3 with two cable cards. Yes, cable cards are a pain in the bahootie. Everything bad you've heard about them is (mostly) true. But, once you have them (mostly) working, the combination of cable cards and the TiVo is unbeatable. It gets you the whole HDTV experience plus everything that TiVo does that posers wish they could do.

For example, with two cable cards installed, TiVo can record two standard definition or HDTV programs at once, or record one program while you watch another. Some cable companies won't charge you extra for a standard digital cable box in addition to the two cable cards, so you even can have TiVo record two programs while you watch a third directly from the cable box. It's nice to have the cable box handy anyway, because you can't get pay-per-view directly from within TiVo.

The best part is that TiVo behaves like, well, TiVo. TiVo takes average reaction time into account when fast-forwarding or rewinding through a show. When you hit Play, it backs up to the spot you probably saw on the screen when you decided to hit the Play button. Add to that the season-pass approach to subscriptions and the intuitive interface—nothing even comes close to the user-friendliness of a TiVo.

Okay, so what's with this mostly stuff? I don't know if the cable cards are at fault or the cable company is at fault, but I've had two problems with cable cards. They tend to lose their authentication occasionally. They will re-authenticate themselves automatically, but your reception drops out in the meantime. I also do not receive a couple of premium channels I'm supposed to get, and the cable company hasn't figured out why. They're redundant channels, so it doesn't affect my viewing, but it's an annoyance.

The bottom line is if you want a real PVR, get TiVo. I've come around to GPLv3, and I'm in favor of the new license. But, it will be a sad day if GPLv3 forces TiVo to fork Linux in order to continue using it. TiVo has done a remarkable job with Linux and its hardware, and it should be rewarded, not punished.

Nicholas Petreley is Editor in Chief of Linux Journal and a former programmer, teacher, analyst and consultant who has been working with and writing about Linux for more than ten years.



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Just to add another note

Anonymous's picture

Just to add another note which is probalby a deal breaker to most consumers. With Tivo you don't get access to any of the On Demand or PPV stuff. No high def CSI, Sopranos for you!

The Comcast PVRs are

Anonymous's picture

I think your article overlooked the easiest way to record and watch cable. Use the cable companies stuff.

The Comcast PVRs are integrated with their programming. And they have recently upgraded the software. With the Comcast hdtv pvr ($15/mo), you get *three* high-def tuners. That's right.

With Tivo, you have to buy the box for $300, and pay monthly fees for the guide, and monthly fees to the cable provider for the cards. And arguably you still have an inferior product to the comcast pvr.

Missing Premium Channel on Tivo

tgilber1's picture

>Okay, so what's with this mostly stuff? I don't know if the cable cards >are at fault or the cable company is at fault, but I've had two >problems with cable cards. They tend to lose their authentication >occasionally. They will re-authenticate themselves automatically, but >your reception drops out in the meantime. I also do not receive a >couple of premium channels I'm supposed to get, and the cable company >hasn't figured out why. They're redundant channels, so it doesn't >affect my viewing, but it's an annoyance."

The issue with your missing premium channels probably has to do a mismatch with the sub-streams of the MPEG transport.

For example, make sure there is only one video stream and that its PID is matches the PCR PID, that is if the provider embeds the PCR (program clock reference) in with the video stream. Make sure that the video stream is a type 0x02 (ISO-138181). The other types of video are MPEG-1 - (will not work) and SCTE (another MPEG-2 video standard). I believe the TiVo can decode SCTE (0x80), but have not verified.

Another common problem with the cablecards is no audio on a few channels. This may be attributed to the TiVo 3 or cablecard-ready television's inability to decode the audio type. Unfortunately, the audio codecs used is not always consistent with the content providers. In regards to the TiVo 3, The last I checked (within past 6 months), it cannot decode MPEG-2 audio. Typically, cable companies use AC3 (Dolby Digital) to deliver audio, which is what is defined by the ATSC and used by TiVo and many televisions. Hence, why TiVo does not play audio when audio is MPEG-2 audio. Check with the cablecard-ready television or TiVo manufacturers for a firmware update to add the codecs.