Advertisement

How-To: Serve video to your TiVo

TiVos have been hacked on and modified by dedicated hardware enthusiasts ever since they first showed up on the scene in the late 90s. Video streams can be pulled off of them and re-inserted by hand, but previously that was a rather painful process -- and playing non-TiVo video was even more painful. In today's How-To, we'll show you how to serve up your archived video to your TiVo with a click of your remote.



Today we'll be using a piece of software called TivoServer to set up a... TiVo server. Because the TiVo is designed to only play back TiVo recorded video, it can't play back video that's been encoded in other formats. The nice thing about TivoServer is that it pretends to be another networked TiVo, and it actually re-encodes video on demand to the format that TiVo is expecting.

We're sure you understood that, but here's the short version: TivoServer will serve up your collection of DivX / AVI / whatever codec videos for playback on your MRV-enabled (unencrypted) TiVo.

Stock TiVos include some video encryption, but it's easily disabled when the box is hacked. We modded ours by hand, but we hear that the TiVo Zipper hack can also take care of this for you.

For today's How-To, we'll serve using our Ubuntu Linux box. It's on the same LAN as our TiVo, but otherwise there's nothing special about the installation. The machine doesn't have to be the latest and greatest -- we've successfully run TivoServer from a 700Mhz Pentium III.

Our DirecTV TiVo has been networked and modded to allow the MRV (Multi Room Viewing) feature to work. With it, the DTiVo can transfer and receive shows to and from other TiVos with MRV enabled. (OK, this pic is of our HD tivo, but you get the idea)

Download TivoServer for Linux from the download section on SourceForge. You'll want to grab tivoserver-0.4.3-linux.gz and save it to your home directory. It's a standalone binary, so you don't need to install any pre-requisites that Ubuntu doesn't include. (And yes, there are OS X and Cygwin versions.)

Create a video directory in your home directory (i.e. /home/willo/video). Alternatively, you can create a symbolic link to the top directory of wherever you like to keep your video files. TivoServer doesn't allow us to change the location that it searches for videos.

Copy some video files into your video directory. TivoServer won't start unless there's something in there. (If you add files later you'll need to restart TivoServer.)

Open up a shell and cd to wherever you saved tivoserver-0.4.3-linux.gz. To set it up, unzip the file, make it executable, and run it:
gunzip tivoserver-0.4.3-linux.gz
chmod 755 tivoserver-0.4.3-linux

./tivoserver-0.4.3-linux

TivoServer should be running if you put your video files in the right place. Now go visit your TiVo.

At the bottom of the Now Playing List, you should find TivoServer. Select it.

Under the TivoServer, you'll find your list of shared videos. Select one to test it out.

Select one of your videos and hit Watch on this TV.

The TiVo will request the file and TivoServer will transcode and send the stream to the TiVo.

Once TiVo has enough in the buffer, it'll give you this splash screen. Go ahead and start playing the show.

Sweet, geeky success.

TivoServer is a nice piece of software, but it has a few problems. There's no config file, so you have to point ~/video at your video location. If it chokes on a file it doesn't like (like some DVDs we encoded with XviD), it will crash. Support for TivoServer can be found at the dealdatabase forums.

Still, even with its quirks, TivoServer means that you can archive your videos using DivX (or whatever makes you happy) to conserve storage space and play them back on any networked TiVo in the house. Good luck, and may the forc-- nevermind.