Last active
May 30, 2020 19:38
-
-
Save henryjfry/34ee4bb5322eb32d9aaf1b0a49920192 to your computer and use it in GitHub Desktop.
/home/osmc/.kodi/addons/plugin.video.realizer/resources/lib/modules/player.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def run(self, title, year, season, episode, imdb, tvdb, url, meta, id, clearlogo): | |
try: | |
control.sleep(200) | |
self.autoResume = control.setting('bookmarks.autoresume') | |
self.nextup_timeout = control.setting('nextup.timeout') | |
self.nextup_service = control.setting('nextup.service') | |
self.next_episode = [] | |
self.seekStatus = False | |
infoMeta = False | |
self.filetype = 'episode' | |
self.watched = False | |
self.totalTime = 0 ; self.currentTime = 0; self.lastProgress = 0 | |
self.original_meta = meta | |
self.content = 'movie' if season == None or episode == None else 'episode' | |
if self.content == 'movie' and imdb != '0' and imdb != None: | |
self.filetype = 'movie' | |
infoMeta = True | |
else: infoMeta = False | |
if self.content == 'episode' and imdb != '0' and imdb != None: | |
self.filetype = 'episode' | |
infoMeta = True | |
elif self.content == 'episode' and tvdb != '0' and tvdb != None: | |
self.filetype = 'episode' | |
infoMeta = True | |
elif self.content == 'episode': | |
self.filetype = 'episode' | |
infoMeta = True | |
else: | |
self.content == 'episode' | |
self.filetype = 'episode' | |
infoMeta = True | |
# infoMeta = False | |
self.tvshowtitle = title | |
self.title = title | |
self.year = year | |
if infoMeta == True: | |
self.name = urllib.quote_plus(title) + urllib.quote_plus(' (%s)' % year) if self.content == 'movie' else urllib.quote_plus(title) + urllib.quote_plus(' S%02dE%02d' % (int(season), int(episode))) | |
else: self.name = urllib.quote_plus(title) | |
self.bookMarkName = urllib.unquote_plus(self.name) | |
self.season = '%01d' % int(season) if self.content == 'episode' else None | |
self.episode = '%01d' % int(episode) if self.content == 'episode' else None | |
# self.Nextup = None | |
self.DBID = None | |
try: plot = meta['plot'] | |
except: plot = '' | |
self.FileId = id | |
self.imdb = imdb if not imdb == None else '0' | |
# import xbmc | |
# xbmc.log(str(imdb)+'===>REALIZER', level=xbmc.LOGNOTICE) | |
self.tvdb = tvdb if not tvdb == None else '0' | |
self.season = '%01d' % int(season) if self.content == 'episode' else None | |
self.episode = '%01d' % int(episode) if self.content == 'episode' else None | |
self.metaID = [self.imdb, self.tvdb] | |
self.metaID = [i for i in self.metaID if not str(i) == '0'] | |
if self.content == 'movie': self.ids = {'imdb': self.imdb} | |
else: self.ids = {'imdb': self.imdb, 'tvdb': self.imdb } | |
self.ids = dict((k,v) for k, v in self.ids.iteritems() if not v == '0') | |
poster, thumb, fanart, meta = self.getMeta(meta) | |
item = control.item(path=url) | |
self.infolabels = {"Title": title, "Plot": plot, "year": self.year} | |
# if self.content == 'movie': | |
# self.infolabels = {"imdb": imdb, "IMDBNumber": imdb, "MovieID": imdb} | |
self.infolabels = {"imdb": imdb, "IMDBNumber": imdb, "MovieID": imdb} | |
if self.content == 'episode' and infoMeta == True: self.infolabels.update({"season": meta['season'], "episode": meta['episode'], "tvshowtitle": meta['tvshowtitle'], "showtitle": meta['tvshowtitle'], "tvdb": self.tvdb}) | |
else: self.infolabels.update(meta) | |
self.original_meta = meta | |
if self.content == 'episode': item.setArt({'icon': thumb, 'thumb': fanart, 'poster': poster, 'fanart':fanart, 'tvshow.poster': poster, 'season.poster': thumb , 'tvshow.landscape':thumb, 'clearlogo': clearlogo}) | |
else: item.setArt({'icon': thumb, 'thumb': thumb, 'poster': thumb, 'fanart':thumb, 'clearlogo': clearlogo}) | |
if self.content == 'episode' and infoMeta == True: | |
try: self.infolabels.update(meta) | |
except: pass | |
item.setInfo(type='Video', infoLabels = self.infolabels) | |
control.player.play(url, item) | |
control.resolve(int(sys.argv[1]), True, item) | |
control.window.setProperty('script.trakt.ids', json.dumps(self.ids)) | |
self.keepPlaybackAlive() | |
control.window.clearProperty('script.trakt.ids') | |
except: | |
return |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment