Shows with every episode titled "TBA"

Any questions? Need some help?
Post Reply
edifus
Posts: 15
Joined: 01 Sep 2016, 19:36

Shows with every episode titled "TBA"

Post by edifus »

With streaming services like Disney+ not releasing episode information until the day of release is resulting in a lot of shows being titled as "TBA". Show information is downloaded and cached as "TBA" and Filebot does not refresh its cache and check for updates on following weeks. Clearing cache every run results in a new registration and I've been emailed to stop doing this repeatedly with my license.

How can this be solved without forcing cache clear every single run?
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Shows with every episode titled "TBA"

Post by rednoah »

Which database are you using? Which specific show are we talking about? Can you provide a sample file path?


:idea: If you fetch the episode information for a given series every ~6 days, then you will always get the latest episode information from the database at that point in time, so you should not have an issue with weekly shows. Especially if you process files ~1 day after release.


:!: If you fetch fresh episode list information today, and then try again a day later, you will instantly get stale episode list information directly from the cache on the second day. However, if you try again a 5+ days later then you will again get fresh episode list information.


:arrow: If we are talking about a series that airs weekly, then the easiest solution is processing the new file once per week (this guarantees that we're always working with fresh episode information) one day after release (this probably ensures that somebody has replaced TBA with the episode title already).



EDIT:

:!: -clear-cache isn't really a solution to the TBA problem because you will still get files incorrectly titled TBA if the database says TBA at the time. -clear-cache is useful if you then want to fix those TBA episode titles a day later, and don't want to wait for half a week. -clear-cache is not necessary if you just wait a few days before re-processing the file.

:arrow: A good solution would process the files correctly on first try, and so we'll want to wait for others to enter the missing episode titles, and process the files after that. If you process files manually, then it's just a matter of doing it a few hours later than usual (instead of immediately, getting TBA, and then being locked into TBA for the next 3-4 days due to caching). If you have an automated setup, then things may or may not be easy depending on what you're doing. If you are using the amc script then you can use --def minFileAge=1 to process only files that are older than 1 day already. This approach works well if you process files on a schedule every day. If filebot is called on newly completed files directly, then you'd have to find a way of deferring that call until later, i.e. sleep 86400; filebot ... would be a most basic solution for that.
:idea: Please read the FAQ and How to Request Help.
edifus
Posts: 15
Joined: 01 Sep 2016, 19:36

Re: Shows with every episode titled "TBA"

Post by edifus »

thetvdb is the database being used. Any series from Disney+ right now since they dont list any future episode titles until the day of release and I am processing the files on that day, not 1 day later.

What you're describing might make sense if I only ran filebot once a week but it runs randomly throughout the week using an inotify watch script. Once a file has been processed it goes on the exclude list and will never be updated again - even if new episode information shows up. Not sure how I am supposed to manage the cache this way so that it clears before a show runs or clears before a specific show runs because it doesn't seem to refresh or work properly unless I manually run "filebot -clear-cache".

This happened again overnight with a new episode of Moon Knight. Every episode so far has been titled TBA by Filebot and has to be manually renamed after the fact (exclude list). This show was processed automatically by Filebot last night and does not contain the proper episode information.

Output from last night-

Code: Select all

Waiting 30 seconds for changes to settle down...
**** 2022-04-13T03:04:10 | filebot run started...
Run script [fn:amc] at [Wed Apr 13 02:04:11 GMT-05:00 2022]
Parameter: artwork = n
Parameter: extras = n
Parameter: skipExtract = y
Parameter: unsorted = n
Parameter: ut_label = Series
Parameter: excludeList = /data/logs/.tv.excludes
Parameter: movieFormat = {n.replace(/·/, /-/).removeAll(/[?,.:]/)} ({y})/{n.space('.').replace(/·/, /-/).removeAll(/[!?¡¿,:'`´‘’ʻ…]/).replacePart('Part.$1')}{'.'+y}{'.'+fn.match(/PMTP/)}{'.'+fn.match(/ATVP/)}{'.'+fn.match(/AMZN/)}{'.'+fn.match(/HMAX/)}{'.'+fn.match(/HULU/)}{fn.match(/.NF/)}{'.'+vs.replace('DVD-R', 'DVD').replace('WEBRip', 'WEB-DL')}{'.'+fn.match(/Remux/).upperInitial().lowerTrail()}{'.'+vf}{'.'+vc.replace('ATEME', 'HEVC')}{'.'+hdr}{'.'+ac.replace('MLP', 'TrueHD').replace('AC3', 'DD').replace('MPEG Audio', 'MP3').replace('EDD', 'DDP')}{audio.codecid =~ /A_TRUEHD/ ? '-Atmos' : ''}{audio.codecid =~ /A_DTS/ ? '-HD.MA' : ''}{audio.codecid =~ /ES/ ? '-ES' : ''}{audio.codecid =~ /Pro/ ? '-Pro' : ''}{channels}{'-'+group}
Parameter: seriesFormat = {n.replace(/·/, /-/).removeAll(/[?,.:]/)}/{episode.special ? 'Specials' : 'Season '+s.pad(2)}/{n.space('.').replace(/·/, /-/).removeAll(/[!?¡¿,:'`´‘’ʻ’…]/)}.{episode.special ? 'S00E'+special.pad(2) : s00e00}.{t.space('.').replace(/·/, /-/).removeAll(/[!?¡¿,:'`´‘’ʻ’]/).replacePart('Part.$1')}{'.'+vf.replace('720pInf', '720p')}{'.'+fn.match(/PMTP/)}{'.'+fn.match(/ATVP/)}{'.'+fn.match(/DSNP/)}{'.'+fn.match(/Amazon/).replace('Amazon', 'AMZN')}{'.'+fn.match(/AMZN/)}{'.'+fn.match(/HMAX/)}{'.'+fn.match(/HULU/)}{fn.match(/.NF/)}{'.'+vs.replace('DVD-R', 'DVD').replace('WEBRip', 'WEB-DL')}{'.'+fn.match(/Remux/).upperInitial().lowerTrail()}{'.'+ac.replace('MLP', 'TrueHD').replace('AC3', 'DD').replace('MPEG Audio', 'MP3').replace('EDD', 'DDP')}{audio.codecid =~ /A_TRUEHD/ ? '-Atmos' : ''}{audio.codecid =~ /A_DTS/ ? '-HD.MA' : ''}{audio.codecid =~ /ES/ ? '-ES' : ''}{audio.codecid =~ /Pro/ ? '-Pro' : ''}{channels}{'.'+vc.replace('ATEME', 'H.265').replace('HEVC', 'H.265').replace('AVC', 'H.264')}{'.'+hdr}{'-'+group}
Parameter: animeFormat = {primaryTitle}/{primaryTitle} - {e.pad(3)} - {t.replace(/·/, /-/).removeAll(/[!?¡¿,:'`´‘’ʻ…]/).replacePart(', Part $1')} ({vs.replace('DVD-R', 'DVD').replace('WEBRip', 'WEB-DL')}{'.'+fn.match(/PMTP/)}{'.'+fn.match(/ATVP/)}{'.'+fn.match(/AMZN/)}{'.'+fn.match(/HMAX/)}{'.'+fn.match(/HULU/)}{fn.match(/.NF/)}{'.'+fn.match(/Remux/).upperInitial().lowerTrail()}{'.'+vf}{'.'+vc.replace('ATEME', 'H.265').replace('HEVC', 'H.265').replace('AVC', 'H.264')}{'.'+hdr}{'.'+ac.replace('MLP', 'TrueHD').replace('AC3', 'DD').replace('MPEG Audio', 'MP3').replace('EDD', 'DDP')}{audio.codecid =~ /A_TRUEHD/ ? '-Atmos' : ''}{audio.codecid =~ /A_DTS/ ? '-HD.MA' : ''}{audio.codecid =~ /ES/ ? '-ES' : ''}{audio.codecid =~ /Pro/ ? '-Pro' : ''}{channels}) [{crc32}]
Argument[0]: /data/downloads/completed/tv/Moon.Knight.S01.1080p.DSNP.WEB-DL.DDP5.1.Atmos.H.264-NOSiViD/Moon.Knight.S01E03.The.Friendly.Type.1080p.DSNP.WEB-DL.DDP5.1.Atmos.H.264-NOSiViD.mkv
Use excludes: /data/logs/.tv.excludes (464)
Input: /data/downloads/completed/tv/Moon.Knight.S01.1080p.DSNP.WEB-DL.DDP5.1.Atmos.H.264-NOSiViD/Moon.Knight.S01E03.The.Friendly.Type.1080p.DSNP.WEB-DL.DDP5.1.Atmos.H.264-NOSiViD.mkv
Process as TV Series [Series]
Group: {Series=true} => [Moon.Knight.S01E03.The.Friendly.Type.1080p.DSNP.WEB-DL.DDP5.1.Atmos.H.264-NOSiViD.mkv]
Rename episodes using [TheTVDB] with [Airdate]
Lookup via [Moon Knight]
Fetching episode data for [Moon Knight]
└─ 6 episodes
Fetching episode data for [Moonlight]
└─ 17 episodes
[HARDLINK] from [/data/downloads/completed/tv/Moon.Knight.S01.1080p.DSNP.WEB-DL.DDP5.1.Atmos.H.264-NOSiViD/Moon.Knight.S01E03.The.Friendly.Type.1080p.DSNP.WEB-DL.DDP5.1.Atmos.H.264-NOSiViD.mkv] to [/data/media/videos/tv/Moon Knight/Season 01/Moon.Knight.S01E03.TBA.1080p.DSNP.WEB-DL.DDP5.1.H.264-NOSiViD.mkv]
Processed 1 file
Done ヾ(@⌒ー⌒@)
User avatar
rednoah
The Source
Posts: 22923
Joined: 16 Nov 2011, 08:59
Location: Taipei
Contact:

Re: Shows with every episode titled "TBA"

Post by rednoah »

The cache is per series / episode listing. It merely ensures that FileBot doesn't request the same information repeatedly.


If you process "Firefly" on the 1st day and "Moon Knight" on the 2nd day, then you will always get the latest episode list information from the database at that point in time for the series at hand. The cache only comes into play if you then process another episode of "Firefly" on the 3rd day, which now uses the previously cached "Firefly" episode list information from the 1st day. If you process some new series, or a series that hasn't been processed in the last few days, then you'll get the latest episode listings at that point in time.


Moon Knight 1x03 was released on Wednesday, at 3:00am according to TheTVDB, so that's probably GMT-4. Your automated setup processed the file at Wed Apr 13 02:04:11 GMT-05:00 2022. So if you process a file ~4 minutes after release then there's a good chance that nobody has entered the missing information on TheTVDB yet, or the information is not yet available via the API due to server-side caching.

e.g. probably like this:

Code: Select all

...
13 Apr 2:00 => TBA
[RELEASE] 13 Apr 3:00 => TBA
13 Apr 4:00 => TBA
13 Apr 5:00 => The Friendly Type
13 Apr 6:00 => The Friendly Type
...

:arrow: You are using the amc script in a loop (i.e. the input folder is processed multiple times per day) then you can just use --def minFileAge=1 and ignore new files for the first day. You can use --def minFileAge=0.1 (one tenth of a day; ~2.5 hours) if you're in a hurry:

Code: Select all

--def minFileAge=0.1
:idea: Please read the FAQ and How to Request Help.
Post Reply