A Beginning Look At MythTV

Television: we may grumble about its poor quality and the time it wastes, but we don't want to miss our favorite shows. MythTV to the rescue!

MythTV is a software package that lets you turn your Linux-based computer into a television and personal video recorder (PVR) by recording shows onto the hard disk. MythTV lets you select the TV shows you want to record by using an on-screen menu, pointing and clicking your way way through a schedule by show name or time.

MythTV is similar to TiVo in its ability to record TV shows onto a hard drive. MythTV also offers a point-and-click scheduling feature with TV listings downloaded off the Internet, the same way that TiVo does. Unlike a TiVo, however, you can build as much storage into a MythTV box as the Linux kernel and/or your budget allows. With its links to Xmame, MythTV also lets your box act as a video arcade. Similar to the X Window System, MythTV is set up on a client/server model. This means the TV tuner card(s) can be in one computer while the display is in another computer(s).

The ability to watch TV shows over the network can be a great thing. For example, I once worked in the consulting arm of a Canadian accounting firm. Every time a new Federal budget was introduced into Parliament, the entire accounting staff was required to watch TV at the office so we could follow along. At home, too, it can be nice to have only a laptop with a wireless connection to your server and still be able to watch TV. With MythTV, one server box can provide TV for a number of Linux desktops, be it in a home or office setting.

When considering whether to use MythTV, the first question to ask is, "Does MythTV make sense from a cost standpoint?" A used TiVo PVR often can be found in on-line auctions such as e-Bay for under $100, and TiVo offers many--but not all--of the features MythTV has. So, if you can do this MythTV project for under $100, or if you really want features that MythTV has and TiVo doesn't, then great, go with MythTV. Otherwise, it may be wiser to look at a TiVo or one of TiVo's direct competitors.

The other consideration to make is how much free time do you want to commit to this project? MythTV is not an easy program to get installed and running. I have run into issues with drivers for different TV capture cards conflicting, database security and several other problems. All of these issues are solvable, but they all take time to deal with--in some cases, significant amounts of time.

If you decide to proceed with MythTV, the next question is, "What hardware do I need?" Running MythTV will test your hardware in a number of ways, so you need to pay attention to everything from video cards to hard drives to cases. When it comes to disk storage, you are looking at upwards of 2GB per hour of recorded programming. Even more space is required if you're dealing with HDTV, so if you have less than 40GB of free space, you likely should be checking prices of new hard drives. If you do get a new hard drive for MythTV, keep filesystems in mind. MythTV is storage hungry and expects all program files to be in the same directory. Logical Volume Management, which allows you to add drive space as needed, is worth careful consideration here.

For TV tuner cards, the gold standard is the Hauppauge PVR cards, as they all can do MPEG-2 encoding on the card without depending on the main CPU. As of this writing, the Hauppauge PVR series of cards consists of the PVR-150, PVR-250, PVR-350 and PVR-500. The PVR-150 is a cost-reduced version of the PVR-250, and the only basis for deciding between them is cost. The PVR-350 has an MPEG-2 decoder on the card and can act as a video card. The PVR-500 has two TV tuners on the one card and acts like two PVR-250 cards. Hauppauge does offer multiple versions of some of these cards, some with a remote control and some without, so double-check what is or isn't included with the card before you buy one. Also of note is the existence of one AverMedia card, the M179, that can support the same MPEG-2 encoding tricks as the Hauppauge PVR-150.

A large number of low-end TV tuner cards are available from a large number of manufacturers, including AverMedia and Hauppauge. They normally are built around the Brooktree bt8xx or Phillips SAA71xx chips. When looking for information about these parts, you should keep in mind that Brooktree now is a part of Conexant.

Besides low price, there are two common elements to the Brooktree- and Phillips-based cards. They depend on the main CPU to do the conversion to MPEG-2, significantly increasing the sort of CPU you need to support these cards. Second, almost all of these cards depend on the sound card to digitize the TV audio. Therefore, if you want to record two shows at the same time, you need two audio cards.

MythTV does support selected USB and Firewire external TV tuner boxes. So, if you hate the idea of opening up your PC to install a PCI card, or if you have a laptop PC where installing a PCI card is not an option, you still can use MythTV. Do keep in mind, though, that you will pay a substantial premium for these boxes, so if at all possible, go with a PCI card solution. Finally, MythTV does support some HDTV tuner cards.

As I noted in a previous article, I like nVidia-based video cards because of the quality of the video driver software. Assuming you need a new video card and have decided not to use a Hauppauge PVR-350 card, the nVidia GeForce FX 5200-based cards have received many good reviews in the MythTV community. The GeForce FX 5200 is a poor performer when it comes to 3-D video games, but it does have four big things going for it: good software support, the ability to handle anything MythTV can throw at it, low cost (its an older card) and fan-less versions are available. If you are planning to set up your MythTV box in a family room or living room, a fanless card may prove critical. When watching TV, you want all of the noises you hear to be part of what is happening on screen, not your computer.

What you need for a computer CPU depends on several factors, starting with your TV capture card. The TV capture cards that do MPEG-2 encoding on the cards themselves place less strain on the CPU than do video cards that handle MPEG-2 encoding through the main CPU. Likewise, video cards that can do MPEG-2 decoding on the card rather than through the main CPU are easier to deal with. Still, a 750MHz Pentium III is about as low of a machine as you want to go. Yes, you can get away with a lower-end machine if you use high-end capture and video cards. But if you use basic capture and video cards, you probably will find yourself needing a higher-end CPU.

If you are building a MythTV box from scratch, you should give some thought to the case. As with the video card, low noise is a consideration for this project. Cases are available that offer sound muffling for a price that may be worthwhile in some situations. Here you can find a list of real-world examples of the kinds of hardware that have been made to work and get some idea as to how happy the people in question have been with the results.

What you are going to need in the way of software depends on the hardware you have and where you live. To start with, you need the MythTV package, which contains the MythTV front-end and MythTV back-end software. It is available on the MythTV Web site. While perusing the MythTV Web site, you likely will want the desirable but not required plugins package, which adds support for weather displays, games and other useful additions.

MythTV depends on its database, which runs under MySQL, so the next stop is the MySQL Web site. MySQL is offered under two licenses, a commercial one and a free GPL one. For MythTV purposes, the GPL version is fine and should be downloaded and installed.

Driver software is required for your TV capture device(s). Exactly what you need here depends on the device(s) in question. For the Hauppauge PVR series, you need the IVTV driver. For drivers and information about a number of other TV tuner cards, take a look at the video4linux wiki.

One of the nice features of all self-respecting PVRs is the ability to point and click what shows you want to record. This means MythTV needs to somehow know when/where, for example. Doctor Who or Corner Gas will be shown. If you are in the United States or Canada, you should set up an account with Zap2it Labs. It provides a TV listing service for MythTV users, the only requirement being that you complete a short survey every 3 months.

When setting up an account with Zap2it, you need to answer some user-profile questions, such as how many hours do you spend reading each week. You also need to provide some location information, your zip/postal code, antenna/cable/satellite provider name, plus the MythTV certificate code: ZIYN-DQZO-SBUT. If you live outside the US or Canada, instead of using Zap2it, you need a copy of XMLTV. XMLTV is a program that, as of this writing, can grab TV listings for Austria, Britain, Denmark, Ireland, Finland, France, Germany, Hungary, Japan, Netherlands, Norway, Romania, Spain and Sweden from local Web sites. It then turns the listings into a format that MythTV is happy with.

To support the ability to use a TV-style remote control with MythTV, you need a copy of the Linux Infrared Remote Control (LIRC) software and some sort of infrared detector for your PC. Depending on the sort of TV capture card you choose, an infrared detector may have been included. Alternatively, if you're comfortable working with a 25-40 watt soldering iron, the LIRC Web site has plans for several simple infrared detectors that work well with its software.

For the remote control, if you don't use the remote included with your TV tuner card, then almost any "universal" remote control can be made to work with the LIRC software. The one brand of remotes with known issues is Bang & Olufsen, which uses a proprietary protocol. In my case, I was able to get a perfectly usable, factory refurbished remote and a package of batteries from a local electronics clearance shop, all for under $5.

Next comes the installation. As previously noted, this step is going to be tough, with a number of distribution-related oddities. So, you are going to need help beyond what is included with the software or what is available on the MythTV Web site. Jarod Wilson wrote an excellent on-line guide for setting up MythTV under Fedora Core 4. This MythTV users mailing list is useful, but at around 100 messages a day, is somewhat high volume. In addition, the major search engines such as Google and Yahoo are your friends in tasks such as this one. You almost can be certain that someone somewhere has encountered the same problem you're now facing and has posted a note about it on the Net. [Also, check out the December 2005 issue of Linux Journal for more articles about MythTV.--Eds.]

If you choose to set up a remote front-end box that does only the display work, while depending on a back-end box for files and TV capture cards, there is some debate as to what makes the best front-end box. Ironically, Microsoft XBox video game machines are a popular choice for a front end, as they can be made to run Linux. XBox machines are small, and they blend in well with a family room decor. More importantly, they have almost all of the key hardware you would need for a front-end box, such as built-in network connections. And, with the November 2005 release of the XBox 360, used original XBox machines should be inexpensive.

Beyond the basic install, the MythTV plugins offer a great many goodies. There are two legal issues to be aware of with two of the plugins, MythDVD and MythGame. In order to be able to watch properly the DVDs you have bought or rented from the local video store, you need a program that can deal with the Content Scrambling System, or CSS. CSS is the encryption system used on a great many DVDs that supposedly prevents DVD piracy. The movie studios have been all too happy to sue software developers who develop open-source CSS software or even those who provide links to where you can find CSS software. Still, as noted, when you run into a problem with getting something to work with MythTV, search engines are your friend.

Other legal issues can come up with MythGame, which uses Xmame to allow you to play old video arcade games. Xmame mimics the hardware of old machines and can support over 3,000 games. After all, a 3GHz, 64-bit PC has no trouble mimicking 25-year-old, 1MHz, 8-bit video game hardware. The old video game software for Xmame can be an issue, though, as all of it still is under copyright. Thus, there can be issues running it under Linux. Copyright holders for two games, Gridlee and Robbie Roto, have given their permission for non-commercial use of these games. In addition, the copyright holder for the game Poly-Play, VEB Polytechnik Karl-Marx-Stadt, disappeared in the collapse of East Germany, and the game is treated as being public domain. Before you legally can play the thousands of other old games available, you need to get the ROMs that originally were shipped with the game. Once you have an original set of, say, Battlezone, Space Invaders or Asteroids ROMs, you can in most jurisdictions legally make a backup copy to your PC and then run the backup copy on your PC.

Colin McGregor (colin@mcgregor.org) works for a Toronto area charity, does consulting on the side and has served as President of the Toronto Free-Net. He also is secretary for and occasional guest speaker at the Greater Toronto Area Linux User Group meetings.

______________________

Comments

Comment viewing options

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

MythTV hard?

Carl Beech's picture

I've just read your item with interest, but can I point out a couple of things....
MythTV isn't that hard to set up (and I guess it has a lot to do with your distribution!) - I'm using SuSE 9.3, and the whole package came as a set of RPMs, and is also available via APT. There is a setup program, of which the only technical item was that I had to create a mysql database and grant a user access to it. After that, the setup program did the rest - to get a working system.

Yes - I did some tweaking after that to the on-screen settings, via the setup menu within the application when I'd got it running - but that's something we all do in any given program to a certain degree.

In terms of cost - admittedly, I use MythTV to record programs, and not as my 'normal' tv - but I've bought a Pinnacle PCTV Rave at 28GBP, and made up a composite video lead (10GBP), and bought a SCART switcher (8GBP) to get the signal from my sattelite box. But that was it - a total less than 50GBP.

I'm not sure what disk storage parameters you're using, but I'm using software encoding (MPeg4), at 640x480, on my 2.4Ghz machine, and that's encoding at about 1.5Gb/hour. I've allotted 20Gb of disk space, which holds several hours of 'raw' video. If I use highest quality RTJpeg encoding at 720x576 (dvd resolution), then yes, a whole film of two hours will take up about 12Gb - but for recording normal programs and series, it isn't really necessary.

Hope you find these comments useful.

Thanks

Carl.

MythTV User

Brent Michalski's picture

I've been using MythTV for quite a while now. I just recently got a DVR free for signing up with a new satellite provider. I really like using the satellite DVR for what it is good at. But for all of my downloaded movies, clips, photos, and music - my MythTV box rules!

Also, if I have something that I want to easily transfer to my computer, I'll use MythTV to record it.

My next step is to setup MythGame.

Kudos to the MythTV gang, you guys have done an awesome job!

Brent

also check out knoppmyth

Anonymous's picture

If you want to just try it, it may be worth while to check out KnoppMyth, based on the popular knoppix live cd linux distribution.

You can burn a CD, boot directly into linux (without installing to your hard drive) and try mythtv. There is also an install option if you want to use it.

I finally created by own MythTV box using an EPIA MII Mini-ITX board as a front end, with a bigger box as a backend. I'm using Gentoo which is very technical and detailed to install, but makes it pretty easy to install MythTV.

KnoppMyth

Cost factor

linuxphile's picture

Another element in the cost factor is the Tivo monthly service fee of $13.95. Tivo does offer a lifetime subscription fee for about $300, however it is the lifetime of the specific Tivo hardware you've purchased. I have Tivo and I really enjoy it. But I am in the process of building a MythTV box to replace Tivo due to the monthly costs and the storage abilities of Myth.

Cheers

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix