Tablo Ripper - Automatically download new recordings


The start/end times only apply to the background service. Until you get things working in the GUI, no point installing the service or starting it.

Assuming you’ve pointed at the correct FFMPEG folder (it contains FFMPEG.EXE) and a valid output folder, you should just need to ensure your Tablo is listed in the “your tablo” box. Your screen should look something like this:

Do you have any recordings on your tablo (I had to ask)? Assuming you do, try ticking the “verbose” checkbox and click the “start” button again. Post a screenshot if the problem isn’t obvious.


Where would I find the log? I have tried setting the FFMPEG path to


Both ways I get {Exception: URI formats are not supported.}


I ran into this same issue. Turns out I had installed a version which didn’t include the actual .exe. I had to go back to the ffmpeg website and download the newest Static version. The .exe is inside the bin folder, I believe, if you have downloaded the correct version. You might want to ensure you have located it yourself before guessing where it might be found in this program.


Just ran MCEBuddy on my 1/2 hour video downloaded from Tablo. The download of the show took about 3 minutes. MCEBuddy, though I didn’t accurately time it, took at least an hour or more. There was also a degradation in quality of the final video, though it’s very watchable. Just not as good as watching directly from the Tablo, or even watching the downloaded mp4 video itself, which was of very high quality (I’m using 720p Roku setting on Tablo). The good news in all this is that Comskip did an outstanding job of removing the commercials.

Given the loss of video quality, and the conversion time, I think it’s better to fast forward through the commercials myself. Of course, if you do the processing well in advance of when you’re going to watch the show, conversion time ceases to be an issue.

The quality degradation may have something to do with multiple transcoding passes, something I saw no way of avoiding. I think I read something on the Comskip web site about it working on mpeg2, not mpeg4 files, so some transcoding may be required to go from mp4 to mp2 to produce a Comskip compatible file, and then back to mp4 because that’s what I had requested for the final output, but would have to look a little closer at the docs to be absolutely sure. I also noticed that the raw mp4 file downloaded from Tablo was approximately 780 MB for the half hour video, and the output of the MCEBuddy-processed file was approximately 350 MB, approximately half the size.


Hmm; deleted FFMPEG, downloaded it again (64 bit, static version). No change, still getting the

   {Exception: URI formats are not supported.}



Did you find the actual folder that has the ffmpeg.exe file?


Yes, I tried it down to \bin and the one level up from that.


Here is what the GUI looks like. I still don’t know where the log is.


(post withdrawn by author, will be automatically deleted in 1 hour unless flagged)


Sorry for the delay, just got home. Downloaded the _30 version plus the naked FFMPEG files, put them in the same folder, and the system does indeed seem to be running now; at least lots of stuff scrolling down the CMD screen. Don’t know how long before there is something to look at for output, but I expect to be up late, so may be able to report later. Man, thanks so much for your effort with this.

Wow; five minutes, and two shows already converted, and they look perfect to me. However it stopped after the two. No error messages, just seems to be done. Is this the way it is set up?


OK, spoke too soon. The first show looks great; it is a 30 min show. The second one is a one hour show, and did not complete; at least the system seems to no longer be running, and VLC opens but shows zero length and does not run. So now I’m back to: where is the log?

Pause… OK, I think I just did not give it enough time to get through the second one. It is now complete, works fine, and the system has moved on to another one. I’m going to interrupt it to change the target to be my Plex server and see how that goes.

Again, can’t thank you enough. If you have and I just did not see it, please set up a Donate link; I’m sure many will want to express their thanks.


Looking at the time stamps as the shows roll out it looks to be taking about 15 minutes for a one hour show. I have never used MCE; I’ll skip that until another day.


Manual selection is definitely on my todo list. And should be really easy to add since the plumbing is already in place.

I had originally planned to include Comskip in my processing pipeline, but didn’t want to reinvent the wheel. MCEBuddy has a LOT of features built-in. But unless I can find a way to speed things up, I’ll reconsider my decision.

Thanks for the positive feedback. This is just the beginning…


As an old programmer, but not nearly qualified to fiddle with media stuff, your capability gives me other thoughts. Tablo seems unable to implement many features that many people want. I’m sure there is a strategy there somewhere. But consider the requests for episode limiting. Someone like you could author a utility that has an interface that first lists all the programs on the Tablo disk (I’ll assume it would require too much cooperation to get access to the Scheduled data). Then the user sets the maximum for one or more shows listed. The program then periodically polls what is stored and if more than the selected number is found it deletes the excess episodes based upon the meta data of what episode it is. Installed once, runs free in the background. When a new show is added, it gets added to the list and a pop up calls attention to the option to limit its episodes. Bulk Delete could have been handled this way, and others come to mind. Think of it as simply post processing. Another would be to extract shows, delete the ads, then put them back.

Maybe my specifics are not the right ones. My point is that if a good programmer with media knowledge can reach into the Tablo disk and do stuff it opens up many opportunities.


BTW: The program stores internal files here: “C:\ProgramData\CycleJ\TabloRipper”


My answer is always: If it can be done in software, it’s possible. And what you’re suggesting seems possible. Some kind soul has been documenting the API: which is the key to implementing your ideas.

Having said that, I’m keeping my focus on the task at hand. At least for now.

Thanks for the suggestions!


Fair warning: It’s almost August, which means “vacation time” around here. I’m heading out of town for the next 10 days, so while I’ll be watching the forum occasionally, don’t expect new versions any time soon.

But here’s what the next one might look like:


Super, can’t wait. Have a great time. I have seen that if I save the MP4s in the right location my PLEX handler puts them into folders that PLEX will handle. Right now I don’t really see an advantage to watching through PLEX / Chromecast compared to native Tablo through Roku, but a great start and who knows where it will lead.


That is nice. It’s a familiar interface for selecting recordings, and will be a neat addition to your software. That’s your killer feature.

Looking forward to giving it a try when you make it available. Appreciate all your efforts in making this happen.


I think you’re right on about watching shows on Roku vs. pulling them off and watching via Plex. What I like about being able to pull shows off of Tablo is being able to either archive certain favorites to my NAS, or burning the occasional show to DVD. Another use case might be if I’m traveling, where I’d download videos to my tablet for viewing without an internet connection, which may or may not be available.

Most shows I delete after watching, so there aren’t that many I want to save, but it’s nice to have this capability when I do. That’s why I don’t really get the fascination with super large hard drives for Tablo, as with my 2TB drive and 720p recording selection, I can probably record over 1,000 hours of video. With my usage patterns, deleting as I go, I don’t ever see myself filling up the drive.