The State of Home-Brew PVRs on Linux
by Joe Stump11/13/2003
We've heard rumblings in the community for quite some time about individuals creating homebrew PVRs using Linux. Out of these stories and legends, a few projects have actually developed some rather useful PVR applications. In this article, I'll describe my own experience building my PVR. I'll also outline the various projects that make up the current state of PVR technology on Linux.
Hardware Requirements
You'll need to consider a few things when building a PVR. The first is the type of case. Since the PVR box will most likely reside in your living room next to your TV, you will want a quiet, good-looking case. Several cases on the market today cater to the home entertainment PC.
Since your PVR will be encoding video, you'll need a decently beefy processor. Freevo's documentation recommends at least a 400MHz processor, while MythTV says you'll need over 1GHz to record and watch TV at the same time. With the current low prices of processors, I recommend going as fast as you can afford. I also recommend buying as much RAM as possible.
If you wish to record a show and watch a live TV show at the same time, you will need two TV cards: one for recording and one for watching TV. I would highly
recommend using one of the many cards supported by the bttv Linux drivers. If you wish to listen to FM radio, you can pick up one of the WinTV cards that include an FM tuner as
well.
Audiophiles, listen up! You'll want to put a nice sound card in the box and purchase some nice (-looking and -sounding) speakers.
|
Related Reading
TiVo Hacks |
Software Requirements
Before installing MythTV, you'll probably need to install ALSA, fortunately found in the latest 2.6 test kernels. On the other hand, if you are installing Freevo, you will need quite a few applications to get it up and running.
Both MythTV and Freevo require a few libraries and applications. First you'll need to install XMLTV to download TV listings and LIRC to use a remote to control your Linux PVR once you have it set up.
Freevo is basically a controller application that launches various
applications, depending on the user's request. To play movies, record TV, watch
recorded shows, and play DVDs, you will need MPlayer. Alternatively, Freevo's CVS version also has a plug-in for using Xine to play DVDs. I highly recommend tvtime for watching live TV. MPlayer is currently the default TV application; however, I found that the A/V was out of sync. Using tvtime fixed this problem.
Remember, for both Freevo and MythTV you will most likely have to recompile
your kernel. Make sure to include frame-buffer support, USB support (for a
StreamZap USB remote and other USB devices, such as gamepads), and ext3 support
(for quick reboots after hard power downs).
MythTV vs. Freevo
Freevo
When I started my project six months ago, I decided to go with Freevo, mainly because it played DVDs. Freevo is also programmed in Python, which makes it much easier to hack on for those of us who are C-challenged. It's designed very modularly, making it easy to use other applications.
One of the problems I have with Freevo is that a lot of the features are only 90% complete. There are some small and annoying UI problems, though overall, the application is easy to use and works well for basic PVR applications. Freevo is currently transitioning to a recording daemon, which should improve its recording abilities drastically. For now, I highly recommend using WebVCR+ until Freevo's recording daemon becomes stable. Also, those wishing for time shifting (pausing live TV) may want to consider MythTV, since Freevo does not currently support this feature.
If you decide to install Freevo, you may want to look over my Freevo HOWTO.
MythTV
MythTV sports a few features that Freevo lacks, but can be quite a bit harder to set up. In fact the setup process is one of the few reasons I didn't choose MythTV. However, the impressive list of features in MythTV will be enough for many people to trudge through the lengthy setup process.
MythTV's more impressive features include time shifting, a client/server environment, rudimentary video editing, and DVD ripping. One of the drawbacks, however, is that MythTV uses its own modified version of NuppelVideo as its primary codec, which will limit those wishing to export recorded shows to other formats (i.e., VCDs). MythTV also comes with its own web back end, support for LIRC, and a themeable onscreen display.
WebVCR+
WebVCR+ is an easy-to-use recording interface. It's web-based, written in PHP, MySQL, and Perl. I use WebVCR+ to record TV shows, which are then moved into my Freevo folders where I am free to watch them on my TV. I only mention WebVCR+ because it records TV. If you want more than mere recording, you will want to install Freevo or MythTV.
Outputting to Your TV
After a lot of fussing around, I was able to get Freevo to output to my TV. Whether you decide to install Freevo or MythTV, you will want to purchase a Matrox G400/450 card, which has the best TV-out support under Linux.
Freevo supports both the Linux frame buffer and running in XFree86, while MythTV only runs under X. While getting Freevo to display full-screen on my TV with the frame buffer was rather simple, getting X to display in full-screen was difficult. In fact, I gave up and went with the frame buffer, since it was already working.
The Cost
Just like any computer, your PVR box can be cheap or expensive. I've put about $600.00 (USD) into my box so far; however, this includes a nice Seagate drive, sound-dampening materials, and a lighted window case. I also justify the extra cost by telling myself it does other things than a regular TiVo and that a TiVo with a lifetime subscription can cost almost as much.
Conclusion
The good news is that the PVR applications out there are ready for home media-center use. The bad news is that it's not a simple task to get a box up and running. More good news is that both Freevo and MythTV have support for much more than mere PVR applications. Both projects support MAME, photo albums, CD ripping/playback, MP3/Ogg playback, IMDB support, and Internet radio and weather reports.
I'd say, on a whole, Linux PVR technology is in great shape. I actively use my Freevo box daily to record TV shows, watch DVDs, and listen to music.
Joe Stump is the Lead Architect for Digg where he spends his time partitioning data, creating internal services, and ensuring the code frameworks are in working order.
Return to the Linux DevCenter.
You must be logged in to the O'Reilly Network to post a talkback.
Showing messages 1 through 32 of 32.
-
Radeon 7500 All In Wonder
2003-11-19 18:44:26 anonymous2 [Reply | View]
The Radeon 7500 All-In-Wonder has both TV in and out. It comes with a remote control, too. There are later versions of the All-In-Wonder, but the Open Source drivers aren't nearly as far along.
The 7500 drivers are completely open source. The project developing TV in/out is here: http://gatos.sourceforge.net/
I can't comment on the stability of the TV support ('cause I haven't tried mine yet). It works great for standard X11 stuff.
-Dan
-
MythTV Knoppix Distro
2003-11-19 05:12:32 anonymous2 [Reply | View]
Setting up MythTV is a snap.
Download the ISO from www.mysettopbox.tv
Burn CD From ISO
Boot pc from CD
type "setup" at the prompt and the distro is coppied to your hard disk.
(with nvidia video cards, read instructions and run install-nvidia.sh to get video drivers installed)
Knoppix based, but needs to be installed on your hard disk to run. -
MythTV Knoppix Distro
2003-11-19 06:10:20 anonymous2 [Reply | View]
Setting up MythTV is a real bitch if you don't have a pentiumpro compatible processor. All the precompiled packages are built with the -march=pentiumpro flag which will not run on AMD K6-2 processors. This is also the default compile flag for source packages. I had to rebuild every package with the -march=i586. You would think that the i586 option would be the default so it would work with all machines.
I also found issues with incorrect pathnames, for instance, the setup program wouldn't run because it couldn't find the blue themes directory.
If you have to manually build and install everything, you're in for an ordeal. -
MythTV Knoppix Distro
2004-02-15 10:59:33 guyrand [Reply | View]
Heh. Try installing it on ppc. :-)
You can change the settings.pro file to compile with the appropriate march flag for your platform. Beware though, there's assembler used in some of the source files... I saw that and rm'ed the source.
I'm setting up freevo now.
-
TiVo vs DVR
2003-11-17 18:06:04 anonymous2 [Reply | View]
TiVo is nice for time-shifting your TV watching, but a lot of folks alk about hacking it for the purpose of archiving the video -- essentially a digital video recorder.
The problem, as I see it, is that all TiVo-ish systems store the video in compressed form for the sake of maximizing storage. These codecs are usually MPEG 1 or 2, both of which are lossy compressors.
If you want to edit the video -- to remove commercials and such -- you must first uncompress. Then when you recompress, you suffer quality loss, sometimes VERY noticable.
I have a different setup.
I have a Formac Studio TVR (analog to digital video converter with TV tuner) and several BIG hard drives. I record what I want, process it with Final Cut Express and iDVD, and there it is.
Granted, I am not doing tens of hours of video per week, but I manage a couple of hours without difficulty.
-
hardware?
2003-11-17 11:48:42 anonymous2 [Reply | View]
The link to the bttv page is semi-useful. The page says to use cards with bt848 or bt878 chip sets. But no examples are cited.
So what cards are based on those chipsets? -
hardware?
2003-11-18 06:32:05 anonymous2 [Reply | View]
Hauppauge (www.hauppauge.com) has quite a few cards based on this chipset - for instance, the WinTV Theater I own has an 878. I haven't tried it under Linux, though...
-
PVR = ?
2003-11-17 08:50:28 anonymous2 [Reply | View]
What a pity you couldn't spare a line to expand `PVR' into everyday English.
See Jeffrey E.F. Friedl's remark (in _Mastering Regular Expressions_) that an author should do such things `so your readers don't have to.'
-
Waht about VDR ?
2003-11-17 01:24:42 anonymous2 [Reply | View]
VDR is a very active german project with a lot of
interesting features (plugin framework,
xine dvd LCD plugin ...)
Check it out at:
http://www.cadsoft.de/people/kls/vdr/
Cheers -
Waht about VDR ?
2003-11-19 01:11:51 anonymous2 [Reply | View]
VDR is in fact THE linux-based solution - but only for digital Television broadcasts. I run it at home, and, among other things, it can
- record as many programs as the same time as hardware allows
- timeshift
- include EPG data from different sources
- cut movies and burn it straight to DVDs (including DVD Menus)
- convert the recordings to DIVX, SVCD and other formats
- switch on and off your computer automatically for recordings
- supply 5.1 Dolby Digital Sound to your AV-Receiver if it is broadcasted
- Play DIVX, SVCD, DVDs and other formats via the DVB Card. Anything mplayer can play
And I forgot at least 80 % of the other features (ah, maybe you are interested in TETRIS, Tron Minesweeper on your TV)
It is not easy to set up, but a german Computer Magazin has recently released a specialized Linux distribution that makes it a piece of cake....
-
What about pause?
2003-11-16 19:00:18 anonymous2 [Reply | View]
Previously when I looked at home-brew Linux PVR alternatives, not a one of them allowed for the basic "pause live TV" functionality found in all commercial systems. Additionally, it seemed that none of the authors deemed it important, basically relagating their systems to simple VCR replacement instead of being a true PVR.
Is this still the state of home brew PVRs?
Pat Furrie
pfurrie@hotmail.com
-
MythTV's NuppelVideo is a non-issue
2003-11-15 14:57:59 anonymous2 [Reply | View]
What version of Myth did you look at? All recent versions (at least back to 0.8) have supported MPEG4 as well as NuppelVideo. Also with the current 0.12 version, there are built in utilities to export and convert your saved files to another format for easier transport.
-
Just start with Tivo
2003-11-15 07:07:37 anonymous2 [Reply | View]
Since Tivo is already a Linux machine tweaked for this purpose, just start with a Tivo. There are many online "hacks" as well as books to document modifications and enhancements (as well as eliminating ongoing paid service requirements). It's probably the lowest cost platform for a home-brew PVR, and it comes in a nice case that looks good next to your TV! Why re-invent the wheel?
-
premium channels
2003-11-14 19:07:50 anonymous2 [Reply | View]
Is there any way to access premium channels that you have paid for? I have a DVR (S A Explorer 4000) from Time Warner and I can record HBO/etc/etc... Is this possible with a home brewed system and what sort of support do I have to get from TW?
-
Knoppmyth
2003-11-14 13:50:00 anonymous2 [Reply | View]
Knoppmyth is fairly easy to install, and it's improving by leaps and bounds. Give it a try!
-
MythTV install is EASY - KnoppMyth
2003-11-14 13:30:37 anonymous2 [Reply | View]
I just used KnoppMyth to set up a MythTV system, and it was a piece of cake. The only thing that didn't work after 5 minutes of tweaking is the remote with my PVR 250. If ease of installation is a priority, MythTV is the clear winner.
-
Set-top box from Cable Co.
2003-11-14 07:43:49 anonymous2 [Reply | View]
I looked at the box Time-Warner offers in my area. It's literally a digital VCR - without commercial skip. No enhanced media (photos, mp3, etc) - pretty much no import or export to other PCs in my house. Cost was competitive ($10-15 or so), so I might sign up for a 6months to a year while waiting for the Linux alternative to mature, or to make sure TiVo won't implode.
-
yes but what about quality?
2003-11-13 18:18:14 anonymous2 [Reply | View]
I know that regular TVs(even my Sony Trinitron TV) have low resolution and I have always wondered what the output quality of Freevo or MythTV is compared to say Tivo, replayTV, Ucentric or other set top PVRs.
Can anybody comment on this before we go and spend $500+ on a Linux home brewed PVR solution instead of a Tivo or Ucentric box that soon comcast will be rolling out? -
yes but what about quality?
2003-11-14 07:59:43 joestump [Reply | View]
You have total control over the quality of the recording. You can record at "TV quality" or all the way up depending on how many frames per second you record. I tweak the quality down a tad (imagine analog TV) because of file size issues.
Live TV with tvtime is excellent. DVD playback is great as well. Overall I had *NO* issues with the quality of playback.
--Joe








Any comments on this from anyone?