Category Archives: Tivo

DVDs, Subtitles and Tivo

Filed under Tivo

One of the biggest niceties about a Tivo is that you don’t have to fumble with media. I used to have a stack of VHS tapes that I’d put in rotation to records shows I’d want to watch. I’d usually record over them once I’d watched the show, but dealing with all the media was a big headache (forget about actually programming the VCR).

Fast forward, and now, instead of tapes, we have DVDs, CDs, and BluRay discs. Same basic problem though.

Fortunately, Tivo to the rescue! I’ve written before about the easiest free way to move a DVD movie over to the Tivo, so I won’t rehash that here.

However, recently, I ended up with a subtitled foreign language film that I wanted to move to my Tivo. I moved it just fine, but I ended up with an MPG file that contained the foreign language film and NO SUBTITLES! Ack!

So, I need amend my previous post with additional information about how to handle subtitled movies, still completely free. It’s a little more involved but not much so.

Step 1

First, you’ll need to copy the movie off the DVD using DVDFab. This is the same as before. However, you’ll want to be sure to copy the “Full Disc” this time, since you want to make sure you have the subtitle files available for later. Grab a copy of the free “DVDFab Decrypter” here. Install it then run it and choose the “Full Disc” option, as highlighted below.


Choose a target folder on your harddrive somewhere and kick it off. We go through this first step for 2 reasons:

  1. if the DVD has been encrypted, this removes that, so that the following utilities will work on the movie.
  2. all the remaining processing is MUCH faster if the source files are on your harddrive and not the DVD.

Step 2

Now that you’ve got all the files from the DVD to your harddrive, you need to “render” the movie with the appropriate subtitles. You see, subtitles are embedded in the VOB files on the DVD as literally bitmapped images of  the text that need to be overlaid by the DVD player when you select to show subtitles (if you were to play the movie on an actual DVD player). Since we’ll be ending up with an MPG file, none of that will apply. Tivo doesn’t have clue one about subtitles and whatnot, so the separate subtitle images are useless to it.

Instead, what you need is a copy of the movie with the subtitles “burned onto” the actual frames of the movie. This way, the Tivo can simply “play” the movie, the subtitles will be just a part of the image frames in the movie. This does mean you won’t be able to “turn off” the subtitles, but, at least for my purposes, that’s a pretty minor issue.

In order to burn the subtitles onto the movie, you’ll need the free program AutoGordianKnot. Yeah, weird name, but it does exactly what it says it will do. Essentially, it converts the DVD VOB fileset into a DIVX AVI file, but it can render the subtitles into the output avi file easily.


In the above screenshot:

  1. Select the input file (choose the VTS_01_0.IFO file, that will almost always be the proper root file to pick). Select an output folder for the resulting AVI file.
  2. Pick your audio track (if english is listed, you shouldn’t need to be doing any of this!).
  3. Select the subtitles you want rendered into the output avi file. In this case, you’ll likely want English, but there might be more than one choice here
  4. I set the target quality to 100. This is because we’re going to have to “reconvert” the video again and the higher the quality here, the better the end result will be.
  5. And finally, click the Add Job and then the Start buttons.

Note that in my case, the very first time I ran this, I had a few dialogs pop up that I had to click OK on. If you don’t wait for them, eventually the program will timeout and the conversion will fail. The good thing is that, at least for me, all the dialogs displayed within the first 5 minutes or so of the process, so you shouldn’t have to watch the entire process. It can take a while!

Step 3

Once that’s done, you should end up with an AVI file that is playable and that contains the foreign language audio track, along with the english subtitles. Yeah!

However, there’s one problem. The Tivo doesn’t know how to play these files. Basically, Tivos can ONLY play MPG files, and AutoGK can ONLY render DivX AVI files.

That’s where the last program comes into play, AVItoMPG. (alternately, you might try another free format converter, Super ©, but I haven’t personally tried that one yet).

With AVITompg, the easiest option is to download their “Portable” version. It’s the exe and nothing more. Just download it and run it!


Click the “Add Video” button, select the AVI file you generated in Step 2 above, then be sure to select the DVD Compatible MPEG2 format in the Output Format box.


The other MPG formats should work as well, but I haven’t tested them. Leave the other settings “Auto”. I found no need to change any of them.

Click OK, then click the Convert button and let it go! When it finishes, you should have an MPG file in the output folder, that contains the foreign language audio track and the English subtitles.


The MPG file is the only one you still need. You can delete all the VOB files from Step 1 and the AVI file from Step 2.

Now, just move that MPG file wherever it needs to go so that you can get to it from your Tivo and you’ll be able to watch that movie, pause, rewind etc. No DVD to hassle with anymore, either!

Tivo and the Dead MP3 Subsystem

Filed under Tivo

image image I’m a big Tivo fan, so it was with more than a little dismay that I was getting ready to trim our Christmas tree a few weeks ago and I could no longer play MP3’s through Tivo on my home theater. The Grinch had apparently just nested in my Tivo.

What was very strange though, is that I could completely navigate through my MP3 collection, via any one of the services I run (Tivo Desktop, Galleon, and J River Media Center). But when I’d select to play a track, Tivo would show the “Playing” screen and get stuck at the 0 position. It’d never actually play anything, though in all other respects, it was working perfectly.

Reset Media Center. No dice.

Reset Galleon. Still no dice.

Reset the Tivo. Ack. You get the picture.

I gave up after spending about 2 hours on it and decided that both the Tivo and me needed a little cooling off period.

I was starting to think that maybe a Tivo firmware update (one of those “happen automagically in the middle of the night” upgrades) was responsible. Anyway, after some research and a posting on the Tivo forums, someone suggested actually hard-rebooting the Tivo. Apparently, the mp3 subsystem can get hosed every once in a while.

I’d never had that happen, and I was always under the impression that resetting the Tivo via the menus was the same as an “Unplug it, and plug it back in” reboot, but, what the hey.

Lo and behold, it worked! Media Center, Galleon and the Tivo Desktop can all play MP3’s again. I guess there might be some traction in the old tech support saw “Have you rebooted the machine?” after all<g>.

At any rate, it’s a Merry Christmas again!

And have great New Year!

DVDs on your Tivo

Filed under Tivo

image At one point, a few months back, it struck me that it might be nice to watch DVDs via my Tivo.

Why on earth do that, you might ask?

  • You won’t have to jockey with discs (my 4 year old loves watching things a second time, or in the case of Mr Roger’s Neighborhood, Sesame Street and any movie with a princess in it, a third, forth, or x^nth time).
  • The Tivo has a pause even my 4 year old can use (which is very important when there’s the need for a potty break mid-Cinderella!)
  • Pause, rewind, etc just seem to work so much smoother on the Tivo. Plus, if you do have to pause your movie, the Tivo will preserve where you are, even if you bail out completely. My DVD player can’t do that.

What you need

  1. A DVD (that you want to convert to a Tivo-friendly movie)
  2. A DVD drive in a PC (preferably, a reasonably fast PC)
  3. A networked Tivo (not much point if it’s not networked)
  4. DVDFab HD Decryptor Freeware version – used to extract the main movie from a DVD
  5. VOB2MPG – used to convert the extracted VOB fileset into a single MP4 file
  6. Tivo Desktop installed on your PC – This is how you get the final MP4 movie transferred to the Tivo

A Word of Caution

A few of my DVD’s just couldn’t be converted this way. I’m guessing they’re of the sort that have the “mangled disc” copy protection, but I can’t swear to it. Maybe there’s a utility out there that could work around this, but, hell, if I want to watch those discs, I just use the disc itself and be done with it.

At any rate, your mileage may vary.

Extract the Main Movie VOB (Video Object)

Install DVDFab, and start it.

Insert your DVD and let it load in into DVDFab.


Select the Main Movie option, enter a Target Path (a scratch folder on a harddrive with at least 5-7gig free), and make sure the main movie chapter is highlighted (it’ll usually be the one with the longest Play Time).

Then click Start.

On my machine, it takes about 7 minutes to extract a typical DVD movie.

Convert the Main Movie VOB to an MPG file

Now install and run VOB2MPG

You should see this:


Click the folder button beside the “Folder Containing VOB sets” box, and select the Video_TS folder created by DVDFab during the conversion above.

The click the folder button beside the “Folder to write MPGs to” and just select some other scratch folder somewhere. This is where it’ll save the converted MPG file.

Make sure the target drive has plenty of free diskspace (another 5-7 gig should be fine).

And click Start.

This also takes about 5 minutes or so on my machine.

When it finishes, you’ll have a nice and tidy MPG movie file that you can transfer to your Tivo. At this point, you can get rid of the VOB files and folder created by DVDFab above; they are no longer necessary.

To figure out where to put the MPG file, just open the Tivo Desktop and click View – Published Video.


You should see the above screen. Click the highlighted “Where is this Folder” link to open an Explorer window right to the proper place.

Copy your MPG file here (be sure to name it something nice and readable).

Then go to your Tivo and follow the instructions on the above screen.

Downloading the MPG file from your PC to your Tivo may take a while, depending on how you’ve got your Tivo networked, but eventually it should get there and be ready for your viewing pleasure!

And a final note

Before people start whacking me, yes, I’m sure there are plenty of low cost apps out there that’ll do this entire process more-or-less automatically (heck, some might even handle the few discs I ran into that didn’t work because of bad sectors).

For that matter the paid version of DVDFab looks like it’d do it.

If you know of a good app for this, by all means let me know!

It’s just that I only have a 320GB Tivo<g> and even if I could, I’m just not interested in filling it with ALL my DVD’s. Just the ones that might get watched repeatedly.

I guess I’m just pragmatic that way.

Now, where’d I put those 120$ industrial arcade trackballs?

Making Tivo Server Run as a Service

Filed under Tivo

I love Tivo. If you have a cable company DVR, my heart goes out to you. My 4 year old daughter can operate our Tivo to watch her favorite show. And she can easily pause the action to take those all important potty breaks! That’s not to say she watches a lot of TV, but hey, Mr. Roger’s rocks!

I don’t even mind the 13$ a month for the service (although now, I SOOOO wish I’d taken the blue pill gone with that lifetime subscription.

But one thing that has annoyed me since I first got the thing networked is the fact that the dang server software has to be run from a logged-in user account. Tivo sets up its “Beacon” service as a legitimate Windows Service, but there are three other programs that get run via the RUN key in HKCU, and, of course, those only get fired off after a user logs in.

Since my Tivo server software is actually running on a server, it’s a tad annoying to actually HAVE to login just to get the Tivo stuff running.

It hasn’t been a huge pain, but I finally got some time to experiment, and I’m happy to report, there does appear to be a solution.

The Goal

I should reiterate that the goal of all this is to get things set up such that powering up the “server” machine is enough to get the Tivo Server running and able to communicate with the Tivo. If you want to actually use the Tivo Desktop from the PC, then you’ll still have to login.

The Disclaimer

Before you start, be warned that mucking with your registry and with services can be dicey, especially when your setting up programs to run as services that weren’t originally intended for that purpose.

However, in reality, there’s really no need to directly fiddle with the registry using this technique. And converting an app to a service can be done for free, or done much more easily for the reasonably low cost of a simple utility.

What’s needed

  • A Tivo, and it really has to be networked for there to be much of a point in all this.
  • A “server” PC that is already running the Tivo Desktop and Server software. You absolutely MUST already have the Tivo software running and verify that it can connect to your Tivo, download shows, share music etc before even attempting any of this process.
  • A way to convert a standard app into a Windows Service. I use FireDaemon for this, simply because I already bought it for other purposes, and it’s a bargain at 40$, but there are free alternatives out there. One in particular is SRVANY.EXE. A good article about that approach is here, but just google for more.

First things First

As mentioned above, make sure that your Tivo Desktop software is already installed, running and can connect to your Tivo and at least download the list of recording available.


You’ll also want to share at least one MP3 track or one photo, so you can see them from the Tivo box. Using Tivo Desktop, setup music or photo sharing here:


You do this so that, once everything’s reset and running as a service, you can easily check, from the Tivo, whether it can still see your PC and the Tivo Server running on it.

Stopping the autoRun of the Tivo Background Apps

Technically, this step isn’t really necessary, but I’ll detail it anyway, for those interested parties out there.

As I said earlier, the Tivo Beacon is already configured as a service, so we don’t have to do anything to it.

However, a quick glance through the registry will reveal these keys:


To be technically correct, you should probably remove these keys from the registry (backing them up first!). Actually, you wouldn’t really want to remove the TivoNotify entry, since it really should be run when a user logs in. But the TivoTransfer and TivoServer entries could be removed.

However, from experiments I’ve done, it doesn’t seem hurt to leave them in place. If these programs are started as services, then running them again when you actually do login doesn’t appear to have any effect.

Setting Up the Tivo Transfer app as a Service

Open FireDaemon and select Services – New to create a new service definition. This one will be for the Tivo Transfer Service.

You’ll get the Edit Service Definition Dialog as below. Fill it in appropriately. Typically, if you perform a standard Tivo Desktop install, these paths will be the same for you.


Pay particular attention to the Executable name and the Parameters.

On the Setting page, make sure the Logon Account is set to a user with appropriate permissions and that you will normally logon to the machine as (usually, it’s the user under which you installed and setup the Tivo Desktop).

Also, make sure the Startup Mode is Automatic and disable program exit monitoring.


And finally, on the Dependencies Page, add a dependency to the “Tivo Beacon” service. Mine just happens to be named “Tivo Beacon2”. This guarantees that the Windows Service Manager won’t start this service until after the Tivo Beacon is running.


Setting Up the Tivo Server app as a Service

Create another Service Definition in FireDaemon.


Make sure the logon account, Startup Mode and program exit monitoring are set as in the Tivo Transfer Service above.

And finally, set the dependencies as above, but in this case, include both the TivoBeacon and the Tivo Transfer service (that you just created).

What About That Tivo Notify App?

Good question. It handles the little system tray icon, and as such, doesn’t need to be started as a service.


At this point, you should have created 2 services, one for the Transfer app, one for the Server app.

Use the TaskManager to kill off the two processes (TivoServer.exe and TivoTransfer.exe) if they’re running.

Then, use FireDaemon or the Windows Service Control panel to start the two services you just created. If everything went right, you should see them running in the Task Manager.


Restart your machine and DO NOT LOGIN.

The Wrap Up

Once your PC has restarted, use your Tivo to check that it can see your shared Music or Photos (from the Now Playing screen, select Music, Photos and More, and scroll down to find your PC’s shared music in the list (in my case, My Tivo Server runs as the Administrator and my server’s name is Olympus).


If your Tivo can see those, and can browse through your music or photos, you know that the Tivo Server and Transfer services started properly without you actually logging into your PC, which is the whole point of this twisted exercise!

If not, go back and check to verify that everything is setup as above and that there are no errors logged in the Application Event Log.

Things to Watch Out For

From what I can tell, the Transfer Process, and to a lesser extent, the Server process, do some peculiar things when they start up (I believe they actually start up a second instance, then terminate the initially loaded instance).

Because of this, FireDaemon’s “Process Exit Monitoring” function really made a mess of things. Basically, the idea is that FireDaemon can monitor the process that it starts as a service. If that process terminate for some reason, FireDaemon can automatically restart it.

Under normal circumstances, this is a good thing because you’d want to service to be constantly available. This won’t work with the Tivo processes though. That’s why I disable this feature when setting these services up (see above).

It might be possible instead to increase the load delay or otherwise tweak FireDaemon’s settings, but I haven’t tried that yet.

I do know that if you don’t do something, though, the Tivo processes will just enter an endless cycle of starting, stopping, and FireDaemon restarting them, only for them to stop again, ad nauseam.

And yeah, my TV’s a 36″ tube set, hence the old school sexy curves in the Tivo screen shots<G>