TiVo and Mac OSX: Remux Redux
I finally found a workable set of tools for extracting and re-encoding video from my TiVo using Mac OSX Tiger. For reference, I’m pulling video off of a Series 2 DirecTiVo (HDVR2). If you have a Series 1, you have many more options, including TyStudio, which I mentioned in my previous post. AFAIK, both of the excellent options I’m using now should work for all Series 1 and Series 2 streams.
I have found workable solutions for both GUI and Command-line interfaces. Both tools have their advantages, but the tools I’ll be using the most are the command-line tools. Here’s the procedure I use for each tool.
Technorati Tags: Apple, MacOSX, TiVo
Command-Line Option
The set of tools I’m using now are a combination of vsplit, vstream, and mencoder (from MPlayer). My previous post mentioned that mencoder doesn’t seem to handle the audio-sync very well when re-muxing a .ty file. However, I’ve found that that if I re-mux the .ty file with vsplit into an ordinary MPEGII, mencoder does a much better job when converting that MPEGII into a DivX movie.
Install and start vserver on your TiVo. Obviously you must have your TiVo hacked to do this… And I’m not covering that here. Then, use vstream to fetch a list of all shows on the tivo, so we can get the “fsid” of the show we want:
vstream tivo://myTiVoIP_or_Hostname/llistUse vstream to fetch the show using the “fsid”:
vstream tivo://myTiVoIP_or_Hostname/myFSID -o 'temp.ty' 2>&1Use vsplit to re-mux the show into a standard MPEGII stream (keeping that ‘unused’ string on the end, since the cmd-line arg processor seems to require the extra argument):
vsplit -m 'temp.ty' 'ShowName' 'unused'Now you have a good clean MPEGII file, ready for transcoding. You can play around with mencoder to see what works best for you. For good quality, I recommend doing a multi-pass transcode. See the mplayer/mencoder documentation for more info on that, but here is an example of a 1-pass audio, 2-pass video transcode to DivX:
mencoder ShowName.mpg -ovc frameno -oac mp3lame-lameopts br=128:vbr=4:q=0 -o frameno.avi
mencoder ShowName.mpg -vop pp=lb -ovc lavc-lavcopts vcodec=mpeg4:vhq:vpass=1 -oac copy -sws 2 -o output.avi
mencoder ShowName.mpg -vop pp=lb -ovc lavc-lavcopts vcodec=mpeg4:vhq:vpass=2 -oac copy -sws 2 -o output.avi
mv output.avi ShowName.divxMost of those tools can be found on the DealDatabase forum. I recommend the tivotool.pl package which contains vserver (for both Series 1 and Series 2 TiVo), vsplit (for Mac OSX and Linux), and vstreamer (for Mac OSX and Linux). Also included is a nice perl script which automates the process of getting the MPEGII file as I described above. The easiest place to grab “mencoder” is from the command-line binaries package for OSX.
GUI Option
The VideoLan Client for Mac OSX (VLC) is an excellent movie player application which duplicates most (if not all) of the functionality of mplayer/mencoder. Though I have had trouble using it’s command-line interface, it’s GUI is useful enough for transcoding TiVo files after you’ve modded it with 2 simple plugins.
Start by installing vserver on your TiVo, just as above. If necessary, grab vserver from the same tivotool.pl package. Now, download the 2 plugins from the TiVo-VLC project page. The two files you’re looking for are vlc-ty-mac-r42.tar.bz2 and vlc-vstream-mac-r37.tar.bz2. Note that both of these plugins were built for version 0.8.1 of VLC and won’t work with any other version. Pay attention to the TiVo-VLC status page to see if these binaries were updated for a new version of VLC.
After extracting the two files (with extension .dylib), you’ll need to install these into the VLC.App. Find VLC in your applications folder, right-click (or option-click, whatever you one-butan people call it), and select ‘Show Package Contents’. Copy the two files into “Contents/MacOS/modules” and you are finished with the setup procedure.
Now, fire up VNC and select “Open Network..” and enter “tivo/ty://myTivoIP/plist”. Now open your playlist and select a file for streaming. Pretty easy, huh? You can transcode a file from your playlist by getting the properties of a file and copying the url (including the fsid). Now, use the “Open Network..” menu option to open that file, except use the “Advanced Output” checkbox on the bottom of that dialog. Under settings (right next to that check box), notice the transcode options for Video and Audio. I suggest “mp4v” for video, with a 512kbps bit rate, and “mp3a” for audio with a 192kbps rate.
Posted in TiVo, OSX | 2 comments |

10 months later:
You ought to check out tivotool. It is an osX front end/gui for most of the tools you have listed, and it includes dvd burning options as well as iTunes and iPod options.
http://www.tivotool.com
almost 2 years later:
I think you meant “Now, fire up VLC”, not VNC.