Spurred on by the successes of a couple of guys at work, I’ve been going through the process of setting up a Linux-based PVR.
I’ve had a tuner card for some time, but my first attempts at getting it to work with MythTV under Gentoo a couple of years ago were less than successful. The final prompter to do something was discovering KnoppMyth, a purpose-built Linux distro based originally on the Knoppix “live-CD” distro. KnoppMyth has a customised installer that sets up a Linux system with MythTV and a host of other plugins and extensions that take you from zero-to-PVR with a minimum of fuss.
I downloaded the CD of the latest KnoppMyth, threw the tuner card into a PC reclaimed from a defunct project of mine, and sure enough it worked beautifully.
There were a couple of things that didn’t work out-of-the-box though. I didn’t understand how the setup process configured the “grabber” — MythTV’s name for the process that obtains program listings. The MythTV setup program runs in its Qt interface, but the configuration of the grabber (at least, the one for Australia) runs in the text-mode window that the Qt program is launched from. This little misunderstanding cost me some time in getting it set up properly. Then, for some reason the channels scanned on the tuner card did not match up with the listings obtained by the grabber, so I had to go through each channel entry and manually add the XMLTV URI for the program guide data. But now that’s done, woo-hoo! It works a treat. Even the IR remote control was detected and set up by KnoppMyth.
Buoyed by my success, I went and found a second tuner card for the box (you can’t have a MythTV backend box with just one tuner, you just can’t). Here, I committed the cardinal sin of Linux — I bought a brand-new piece of kit and expected it to work. My sole reasonig was “well it’s the same brand as the one I’ve already got, so it must work”. Idiot. 🙂
So the KnoppMyth box is the backend (and a frontend), and I’ve found the XBMCMythTV scripts to use XBMC (on the XBox) as a frontend as well. MythTV’s functionality in this regard is fantastic — although it is frustrating that every MythTV backend and frontend must be running exactly the same version in order to work together. KnoppMyth is currently based on MythTV 0.19, and Ubuntu Edgy (which I’m running on the laptops) is at 0.20a… Probably not too much of a drama, as the laptops are only on 802.11b wireless so running a frontend on them probably wouldn’t work well anyway.
Apart from getting a frontend on the laptops, and the tuner card that doesn’t yet work, the other remaining concern is that it’s just one more box running in the house. This can be solved however, with a couple of tricks based on Wake-On-LAN. The MythTV frontend can already be configured to send the “magic packet” to the backend to wake it up if powered off, and there’s a couple of ways to have a backend system wake up to make a scheduled recording (one involves poking the PC’s BIOS to set the timed power-on function, the other is an ingenious method involving a second PC — ideally a low power device like a Linksys NSLU2 or WRT54 — sending the WOL magic packet at the scheduled time).