APL Tablo Client

Interesting…so, …the status of ‘Unscheduled’…that indicates that it was manually unscheduled…so, here is the way it goes…

You set a show to record new episodes…it takes a look at all of the upcoming shows and if they are new, it schedules them…if they aren’t…they are set as skipped (because you told it to record new, but they aren’t new, so they are skipped)…but, if it gets un-scheduled manually, then the status changes from scheduled to unscheduled…in the Tablo GUI’s, there is no difference, but they store it behind the scenes with the additional data…

So…I consider that a bit weird…if the Tablo never set it to scheduled, the status would be blank…if it was set to record new, but that one wasn’t new, it would be ‘skipped’…the only time I’m seeing ‘unscheduled’ is when it manually moved from scheduled to unscheduled…can you play around a bit and see if it works the way I’m describing, and see if you can figure out why it’s set to unscheduled?

When I get home I’ll double check things. I probably “unscheduled” for the screen shot. It is tagged, or not tagged as new and may have originally been skipped.

My purpose was to show how you can get a single list and see what’s going on. Hint:. look at it as a user instead of a developer :wink:

1 Like

So you are asking that an app that aggregates another products raw data to make a value judgement on which data is usefull to all potential users.

I sometimes find it hard to figure out exactly who you are responding to…but…if referring to djk, and his want for the episode 2 to be recorded…I think his primary complaint was not with APLTablo or Tablo itself, but with the guide provider that isn’t showing episode 2 as ‘new’…

Something that I’m finding interesting…which I didn’t fully understand, or even for that matter know…we had previously discussed NFL Football and the fact that ‘early’ schedule showed them as TV Show, not sport. At the time you had stated something along the lines of ‘it’s not a game till teams are assigned’…I didn’t like that much at the time because I was thinking of the schedule as a ‘static’ thing, and that as short as 2 weeks out, they should know things and the schedule should be ‘locked’…but as I have started looking at my data more closely, it appears that the schedule is much more fluid than I would have expected, take this show for example

Everything through 9/18 is currently scheduled, because it has a tag of ‘new’…but everything form the 19th-25th is NOT scheduled…it might seem like it’s a rerun…but, knowing this and looking at this for some time now…what I’m finding is that it’s not that they are not new, it’s that the airing listing doesn’t have all of its details yet…kinda like weather…you can see that a storm is coming, and the closer it comes, the more details you can see and know about it, but at the greatest distance (14 days), all you know is that it’s a storm…so the schedule, going out 2 weeks shows me that there will be a Seth Meyers on…but it doesn’t know the details…as the event gets closer, say 6 days out, it knows the season and episode, and guests…but beyond that, it doesn’t know.

So, it’s entirely possible that if djk had ‘waited’ till the schedule got closer, he might have found it updated with ‘new’ as the guide provider updated that information, and auto recorded it per the series definition.

1 Like

Yes, I don’t always know if he’s bored, or has a genuine interest. Getting better at passing… but you’ve given me an opportunity to share and clear up misunderstandings.

Primarily, the data is the same, with a different presentation aka UI. Yes, you are presented more, but it’s nothing you couldn’t have gotten yourself if you’ve wanted to dig through “stuff”.

I’ve only access my table via browser and a few time with android tablet, which app is embedded in WebView - Chrome… still a browser. I’ve felt it had great shortcomings. Having spent some time in Tablo Community forums, many users have various issues with UIs for different devices… most are happy with a one-size-fit-all. #feature-requests has a lot a suggestions surly never to be implemented - they aren’t “marketable”.

Here’s another option. It’s not for everyone… it may be for many. It offers great flexibility. It may not be a “daily driver” for some, but offers answers they can’t get clicking on a bunch of pictures.

You can use as much or as you find helpful, or ignore what you find irrelevant. One windows does allow you to “discard” columns. As for a decision to “make a value judgement” - that’s a personal choice. It could be a little value to you. Possibly poor judgement, or avoid it all together.

The UI is what I’d describe as utilitarian, utility-like. It’s designed for function, not one pointless icon! not a single needless picture!

zactly! I do believe it was state Skipped, skipped_reason not_new. This isn’t the first time I’ve encountered this!

I did note: “not at this time”, I’ve seen this before… but not always. Big example falling apart. The People’s Court was marked as new season 23 starting Sept 3. Then - it wasn’t. And still isn’t!! Season 23 no longer has episodes 1-5, but 6 supposedly started Sept 9 - as indicated on their web page and titanTV and Facebook. So what’s up with that? I set some manual recordings, waiting for it to catch up (an provided some debugging info along the way)

So yes, a fluid schedule, but with tablo’s UI, you can’t actually see a schedule. So it’s really, well you know, to figure some of this out. Wait and see doesn’t always work out in our favor. I don’t want to leave it to chance, since it doesn’t seem like we’re always getting an accurate schedule for money.

1 Like

ok, the table has


What “types” are there? text seems straight forward. Value = what I want. Type2 value specifies the different fields to search? ie) 2 = title/description? What’s 1 and is there a 3? Who knows what an SID is gonna do?

Well, you brought it up. Ok, I mentioned it then you opened the door.

It never “caught up”. The paid service never marked episode 2 of the new season as NEW, yet it skipped over and decided episode 3 will be.

New season 22 episodes 1 & 3 are new… 2 isn’t? Yea, I’m not in it for life.

1 Like

So, type is one of these
Text, Team, Cast, Director

value is the value that type is looking for

if type is text or cast, that can reference a ‘show’, if the match is against a show, it needs to know if you want to record
all or new
that’s what goes in value 2

SID is the id of the Tablo that you want to do the recording on, this is there in support of people with multiple tablos…but even if you only have one, you must populate this value with your tablo sid, this can be found in the server table if you don’t already know it…

All of this will be handled in the GUI that I’m eventually going to build for it…but if you enjoy mucking around in backend tables, you are welcome to I guess :slight_smile:

1 Like

Since you are interested in what people do with raw data I thought I would share this. I used the Recordings raw data to identify some corrupt recordings. I was watching a movie this morning and about 40% through the recording it just stopped even though the total time looked normal. I tried different ways to play but nothing worked so I figured it was corrupt. I looked up the movie in the recordings list and sure enough it took up much less space than expected so I deleted the movie. Luckily I found it online to stream the rest. I used this new information to find a couple other corrupt recordings. I exported the recordings list to a CSV file and brought it into Excel and created a three new columns to help with the analysis. In case anyone is interested here they are (minor Excel skills required):
Column J: “Hours”
=IFERROR(LEFT(E2,FIND(" hr",E2)-1)*1,0)
Column K: “Minutes”
=IFERROR(IFERROR(LEFT(RIGHT(E2,LEN(E2)-FIND(" hr",E2)-3),FIND(" min", RIGHT(E2,LEN(E2)-FIND(" hr",E2)-3)))*1,LEFT(E2,FIND(“min”,E2)-1)*1),0)
Column L: “Size/Min”
Then sort by “Size/Min” and filter by one “Resolution” at a time and eyeball the first entries for each “Resolution”.
I then tried to play the suspect recordings and sure enough I found a couple that had a low “Size/Min” value that would not properly play and I deleted them.
Can you format the hours/minutes in a more Excel friendly manner or calculate the “Size/Min”. If not, it’s ok because I will save my formulas and I included them above in case others find it useful.


Isn’t Excel a Software As a Service product of Office 360? Are your formulas proprietary to Excel? Might they work in Google Sheets or a more cost efficient product?

Right, I’d try, but I couldn’t be sure if I didn’t do it right, or the formulas didn’t work.

The formulas should work in many spreadsheet applications. My first analysis of commercial skip success from September 11 was done on my Linux machine using LibreOffice Calc. This most recent analysis was done on my Windows 10 machine using Microsoft Office Excel 2013, not one of the newer subscription versions.

1 Like

Not sure how much he cared… more to the point - who knows. Although, indirectly, people had access to the info - they didn’t really have access to it in a usable method. Supposedly you could have clicked one at at time and found theses, or waited unit you really wanted to watch, and then it too late.

As more find this useful, there will be more ways it’ll be put to use. For me, mostly just being able to sort data in a way to suite my needs improves things for me. I had made some suggestions, so found helpful, so wait and see maybe.

I will say tablo’s UI is extremely user-friendly. Almost too much so as to cripple things at times. APL Tablo is pretty much no-frills, focus on function. Of course it’s still in development stage, so he may add an icon or colors yet.

1 Like

I just put .17 out there…I’ve been playing with it for a few weeks now with some of the most recent discussion added in, let me know

Oh no - doesn’t like the update to the DB, added column, now can’t find outputdir
[logs via email]

Doesn’t like it when I type something proper now when I typed in improperly before. .18 fixes that little thing, thanks :slight_smile:

Mbps ? Recordings now have a column for… bit rate? or some different value?

Is this calculated? or from the tablo? There appears to be little consistency, between shows from the same source (channel) and channels of the same HD resolution and non match the max setting for recording quality.

this is calculated from information that Tablo is providing…so…the size of the recording is the recording, and all meta-data…so, any preview images, etc that are generated…that can cause a bit of variability…but that number is the number of bytes that the recording is consuming. So, I take that number and multiply it by 8 to get the number of bits, then divide it by 1,000,000. I personally would generally divide it by 1,048,576 (1k=1024), but when dealing with HD size, I found that they divide by 1000, not 1024…so, I stayed with the same 1k previously used.

So, the variability likely comes from the excess ‘stuff’ that is included with the size of the recording, but I wouldn’t expect it to be extremely off from the truth. What is it you are seeing?

As you can see from my screenshot…

this is actually 4 recordings of 4 episodes from the same network, same series…I didn’t until just now notice that one of them was recorded at a different resolution, but even the 3 that were recorded at the same resolution, there is a 2 point difference in the mbps from one to another.

I prior to today had my Tablo set to maximum resolution…and my range of recordings goes from 2-10 depending on the resolution of the file where sd recordings are obviously down to the 2 mark, and my 1080 in upwards of the 10…but I don’t have anything larger than 10 in my recording…

I’m missing the obvious I guess. It’s not MegaBitsPerSecond bit rate. It’s a designations for… some size.

Size of recording (is segments) tablo JSON gives me 1052459008 nothing about meta-data.

(1052459008 * 8) / 1000 = 8419672.064
Size 1.1GB | Mbps 4 | Length 30min

So I’m making it way too complicated.

Are you talking about what should be displayed as a base 10 number or a base 2 number?

/1m, not 1k, but yes, it’s just a size per second, what was originally identified is if you Mbps is way lower than expected, it might not have finished recording properly :grinning: