SurLaTablo.py - Python program to query and convert Tablo recordings

I figured this out but does not seem like this is something that can be configured in the conf even though there is parameter for query format. I found deeper in your script some examples and that worked on the command line but not in the conf.

I figured this out. Looks like Arizona is not included in your script. Looks like I have to use US/Mountain. AZ does not change time so it really should have it’s own defined in the script. No biggie.

And the “lords of time” are always trying to change TZ definitions, etc. The right answer is having pytz.

Normally, you don’t run the program once to get rec_ids, but rather you run a query and do direct operation on the results (run once).

However, if you do want the default query to return just record ids, the following in your surlatablo2.conf file should do it.

options['queryformat'] = '${rec_id}'

Ah ok.

I hear ya. :sunglasses:

Quick question, is there a way for SurLaTablo to set the owner/group of extracted files? I looked through the help and didn’t see one but was wondering if there was one hidden someplace. Apps like Radarr and Sonarr allow you to set this and just seeing if possible with this to maintain consistency in my media library.

SurLaTablo shouldn’t need any special permissions to run… Just run it as the user you want to be the owner.

For those running SurLaTablo with the public beta enabling commercial skip (2.2.25 or 2.2.26), you’re going to need this un-official patch:

At line 1835 (in version 2.2), make it look like this:

                ts_last = ""
                for ts in ts_files:
                    ts_url = Template(TABLO_SEGS).substitute(tablo_ip=tablo_ip)
                    ts_url = ts_url.format(ts)
                    
                    if ts_url == ts_last:
                        tscount = tscount + 1
                        continue
                    else:
                        ts_last = ts_url

                    ts_response = urllib2.urlopen(ts_url)

Basically, test for a duplicate URL and skip. But count it anyway otherwise the progress bar gets really messed up.

2 Likes

Thanks @FlyingDiver, I’ll see about getting this out as a new release.

2 Likes

I also tested surlatablo with -o postscript=true and +Mp4zap1 and got reasonable commercial zapping results on Judge Judy (because I know that’s important) :slight_smile:

Excellent. Thanks for the fix. I thought I was having a networking issue but everything else that accessed the Tablo was working fine.

Ever since updating Tablo to 2.2.26 surlatablo is failing to rip withe the follow error:

close failed in file object destructor:
sys.excepthook is missing
lost sys.stderr

Those 3 lines are repeated 1 more time.

Will that patch in the previous messages take care of this error?

I do recommend the patch submitted above by @FlyingDiver. I’m all upgraded and that patch seems to work just fine for me. I do need to get an official new version out though… maybe later today.

Btw, in my tests so far, guess who cut the commercials better, Tablo or surlatablo? (you probably can guess)

SurLaTablo 2.3 Released

2.3 - Quick fix for new 2.2.25/26 commercial cutting feature of Tablo. Thanks @FlyingDiver

Patch worked! I’m a bit unclear as to if your above “-o…” is actually a way to invoke the new Tablo commercial zapping and if so what exactly do you mean by “reasonable”? Did it just fail to zap some commercials or did it zap some of the show? Also would closed captions work with the new Tablo zapping? I vaguely remember that captions don’t work with surlatablo zapping.

Thanks,

George

Captions on a zapped recording: No… this doesn’t work currently. It will be the captions for the unzapped recording. Likely this won’t be done in 2.x…

A “zap” is just a “transcode”. By default when using -c, you get a Mp4 transcode. Using Mp4zap1 means you’ll get a commercial zapped mp4 using algorithm number 1 (an organic chaotic algorithm). There is Mp4zap2 as well if you want what most people thinks would make sense (hint: it’s usually worse). The -o postscript=true is because there are often short snippets at the end of a show and using black frame detection, you can’t really determine easily what is “show” and what is commercial. So, that option loosens things up a bit at the end (which often time means you get some commercials and some of the following show as well).

Using the transcoders it the preferred way of invoking zapping over the prior -z or --zapcommercials option.

surlatablo.py -n -q 'Bless This Mess - s01e04 - Predators' -o postscript=true -c  Mp4zap1

Because commercial zapping can go “wrong”, you might opt to have both full show and zapped.

surlatablo.py -n -q 'Bless This Mess - s01e04 - Predators' -o postscript=true -c -C +Mp4zap1

So, what happened there? I added a +Mp4zap1, which means do the “default” thing (which is configurable btw but is Mp4 by default) and add to it a Mp4zap1 transcoded as well. With that you end up with the fast remuxed full show, the closed captions as an SRT file and the commercial zapped version.

Why do I DO this to myself? I upgraded the firmware on my tablo, and now the surlatablo script doesn’t work.

Any suggestions as to how I can fix this? (not the stupid updating, but rather the script to download my shows)

thanx in advance - allen

Did you upgrade to version 2.3 of SurLaTablo?