def setPlayerData(self): printl("", self, "S") self.playbackData = self.playerData[self.currentIndex] self.videoData = self.playerData[self.currentIndex]['videoData'] # not used for now #self.mediaData = self.playerData[self.currentIndex]['mediaData'] # go through the data out of the function call self.resumeStamp = int(self.playbackData['resumeStamp'] ) / 1000 # plex stores seconds * 1000 self.server = str(self.playbackData['server']) self.id = str(self.playbackData['id']) self.multiUserServer = self.playbackData['multiUserServer'] self.url = str(self.playbackData['playUrl']) self.transcodingSession = str(self.playbackData['transcodingSession']) self.playbackType = str(self.playbackData['playbackType']) self.connectionType = str(self.playbackData['connectionType']) self.universalTranscoder = self.playbackData['universalTranscoder'] self.localAuth = self.playbackData['localAuth'] self.title = encodeThat(self.videoData['title']) self["mediaTitle"].setText(self.title) self.shortDescription = encodeThat(self.videoData['summary']) self["shortDescription"].setText(self.shortDescription) printl("", self, "C")
def setPlayerData(self): printl("", self, "S") self.playbackData = self.playerData[self.currentIndex] self.videoData = self.playerData[self.currentIndex]['videoData'] # not used for now #self.mediaData = self.playerData[self.currentIndex]['mediaData'] # go through the data out of the function call self.resumeStamp = int(self.playbackData['resumeStamp']) / 1000 # plex stores seconds * 1000 self.server = str(self.playbackData['server']) self.id = str(self.playbackData['id']) self.multiUserServer = self.playbackData['multiUserServer'] self.url = str(self.playbackData['playUrl']) self.transcodingSession = str(self.playbackData['transcodingSession']) self.playbackType = str(self.playbackData['playbackType']) self.connectionType = str(self.playbackData['connectionType']) self.universalTranscoder = self.playbackData['universalTranscoder'] self.localAuth = self.playbackData['localAuth'] self.title = encodeThat(self.videoData['title']) self["shortDescription"].setText(encodeThat(self.videoData['summary'])) printl("", self, "C")
def _refresh(self): printl("", self, "S") # we use this for filtermode at startup self.filterableContent = True # handle pictures self.changeBackdrop = True self.changePoster = True if "ratingKey" in self.details: self.pname = self.details["ratingKey"] self.bname = self.details["ratingKey"] else: self.pname = "temp" self.bname = "temp" # handle content self["title"].setText(encodeThat(self.details.get("title", " "))) self["tag"].setText(encodeThat(self.details.get("tagline", " "))) self["shortDescription"].setText(encodeThat(self.details.get("summary", " "))) self["cast"].setText(encodeThat(self.details.get("cast", " "))) self["writer"].setText(encodeThat(self.details.get("writer", " "))) self["director"].setText(encodeThat(self.details.get("director", " "))) self["studio"].setText(encodeThat(self.details.get("studio", " "))) self["genre"].setText(encodeThat(self.details.get("genre", " - "))) self["year"].setText(str(self.details.get("year", " - "))) # technical details self.mediaDataArr = self.details["mediaDataArr"][0] self.parts = self.mediaDataArr["Parts"][0] self["videoCodec"].setText(self.mediaDataArr.get("videoCodec", " - ")) self["bitrate"].setText(self.mediaDataArr.get("bitrate", " - ")) self["videoFrameRate"].setText(self.mediaDataArr.get("videoFrameRate", " - ")) self["audioChannels"].setText(self.mediaDataArr.get("audioChannels", " - ")) self["aspectRatio"].setText(self.mediaDataArr.get("aspectRatio", " - ")) self["videoResolution"].setText(self.mediaDataArr.get("videoResolution", " - ")) self["audioCodec"].setText(self.mediaDataArr.get("audioCodec", " - ")) self["file"].setText(encodeThat(self.parts.get("file", " - "))) if self.fastScroll == False or self.showMedia == True: # handle all pixmaps self.handlePopularityPixmaps() self.handleCodecPixmaps() self.handleAspectPixmaps() self.handleResolutionPixmaps() self.handleRatedPixmaps() self.handleSoundPixmaps() self.handleSoundChannelsPixmaps() # final sets self.setDuration() self.setMediaFunctions() # now gather information for pictures self.getPictureInformationToLoad() printl("", self, "C")
def _refresh(self): printl("", self, "S") # we use this for filtermode at startup self.filterableContent = True if "type" in self.details: if self.details["type"] == "folder": self.fromDirectory = True else: self.fromDirectory = False # looks like we are just a directory if self.details["type"] == "folder": self.pname = "temp" self.bname = "temp" self.resetBackdrop = True self.resetPoster = True self.changePoster = False self.changeBackdrop = False self.fromDirectory = True elif self.details["type"] == "album" or self.details["type"] == "artist": if self.details["type"] == "album": self["title"].setText(encodeThat(self.details.get("title", " "))) self["leafCount"].setText(encodeThat(self.details.get("leafCount", " "))) self["shortDescription"].setText(encodeThat(self.details.get("summary", " "))) self["year"].setText(str(self.details.get("year", " - "))) self.toggleElementVisibilityWithLabel("year") self.toggleElementVisibilityWithLabel("genre") self["shortDescription"].show() self.hideMediaFunctions() self.hideMediaPixmaps() else: self["title"].setText(encodeThat(self.details.get("title", " "))) self["shortDescription"].setText(encodeThat(self.details.get("summary", " "))) self["genre"].setText(encodeThat(self.details.get("genre", " - "))) self.toggleElementVisibilityWithLabel("genre") self["shortDescription"].show() self.changePoster = True self.changeBackdrop = True self.resetBackdrop = True self.resetPoster = True self.hideMediaFunctions() self.hideMediaPixmaps() if "ratingKey" in self.details: self.pname = self.details["ratingKey"] self.bname = self.details["ratingKey"] else: if "parentRatingKey" in self.details: self.pname = self.details["parentRatingKey"] self.bname = self.details["parentRatingKey"] else: self.pname = "temp" self.bname = "temp" elif self.details["type"] == "track": self.resetBackdrop = False self.resetPoster = False self.setDuration() # technical details self.mediaDataArr = self.details["mediaDataArr"][0] self.parts = self.mediaDataArr["Parts"][0] self["bitrate"].setText(self.mediaDataArr.get("bitrate", " - ")) self["audioChannels"].setText(self.mediaDataArr.get("audioChannels", " - ")) self["audioCodec"].setText(self.mediaDataArr.get("audioCodec", " - ")) self["file"].setText(encodeThat(self.parts.get("file", " - "))) # this is when we are coming from directory if self.fromDirectory: if "parentRatingKey" in self.details: self.pname = self.details["parentRatingKey"] self.bname = self.details["parentRatingKey"] else: self.pname = "temp" self.bname = "temp" self.changePoster = True self.changeBackdrop = True else: self.pname = "temp" self.bname = "temp" self.changePoster = False self.changeBackdrop = False else: raise Exception # now gather information for pictures self.getPictureInformationToLoad() printl("", self, "C")
def _refresh(self): printl("", self, "S") # we have to reset it here self.themeMusicIsRunning = False # for all view steps self["title"].setText(encodeThat(self.details.get("title", " "))) self["tag"].setText(encodeThat(self.details.get("tagline", " "))) self["shortDescription"].setText(encodeThat(self.details.get("summary", " "))) self.setDuration() self.setMediaFunctions() if self.details ["currentViewMode"] == "ShowShows": printl( "is ShowShows", self, "D") #self.setTitle(str(self.mediaContainer.get("title2", " "))) self["leafCount"].setText(self.details.get("leafCount", " ")) self["viewedLeafCount"].setText(self.details.get("viewedLeafCount", " ")) self["unviewedLeafCount"].setText(str(int(self.details.get("leafCount", " ")) - int(self.details.get("viewedLeafCount", " ")))) self["childCount"].setText(str(self.details.get("childCount", " "))) self["studio"].setText(encodeThat(self.details.get("studio", " "))) self["genre"].setText(self.details.get("genre", " ")) self["year"].setText(str(self.details.get("year", " - "))) self.parentSeasonId = self.details ["ratingKey"] self.bname = self.details["ratingKey"] self.pname = self.details["ratingKey"] self.changeBackdrop = True self.changePoster = True self.resetPoster = True self.resetBackdrop = True # if we are a show an if playtheme is enabled we start playback here if self.playTheme and "theme" in self.details: self.startThemePlayback() if self.tagType != self.lastTagType: self.hideMediaFunctions() self.handlePopularityPixmaps() self.handleRatedPixmaps() # we use this for filtermode at startup self.filterableContent = True elif self.details ["currentViewMode"] == "ShowSeasons": printl( "is ShowSeasons",self, "D") printl( "self.mediaContainer: " + str(self.mediaContainer),self, "D") if self.mediaContainer["title2"] == self.details["title"]: self.grandparentTitle = str(self.mediaContainer.get("title1", " ")) else: self.grandparentTitle = str(self.mediaContainer.get("title2", " ")) self["grandparentTitle"].setText(self.grandparentTitle) self["leafCount"].setText(self.details.get("leafCount", " ")) self["viewedLeafCount"].setText(self.details.get("viewedLeafCount", " ")) self["unviewedLeafCount"].setText(str(int(self.details.get("leafCount", " ")) - int(self.details.get("viewedLeafCount", " ")))) self["childCount"].setText(str(self.details.get("childCount", " "))) self.parentSeasonNr = self.details["ratingKey"] self.bname = self.parentSeasonId self.pname = self.details["ratingKey"] self.changeBackdrop = True self.changePoster = True self.resetPoster = False self.resetBackdrop = False if self.tagType != self.lastTagType: self.hideMediaFunctions() # we use this for filtermode at startup self.filterableContent = False elif self.details ["currentViewMode"] == "ShowEpisodes" or self.details["currentViewMode"] == "ShowEpisodesDirect": printl( "is ShowEpisodes",self, "D") self["tag"].setText(str(self.mediaContainer.get("title2", " "))) self["writer"].setText(encodeThat(self.details.get("writer", " "))) if self.details["currentViewMode"] == "ShowEpisodesDirect": self["tag"].setText("Season: " + encodeThat(self.details.get("parentIndex", " "))) self["title"].setText(str(self.details.get("grandparentTitle", " "))) else: if self.grandparentTitle is not None: self["grandparentTitle"].setText(self.grandparentTitle) #self.setTitle(self.grandparentTitle) # technical details self.mediaDataArr = self.details["mediaDataArr"][0] self.parts = self.mediaDataArr["Parts"][0] self["videoCodec"].setText(self.mediaDataArr.get("videoCodec", " - ")) self["bitrate"].setText(self.mediaDataArr.get("bitrate", " - ")) self["videoFrameRate"].setText(self.mediaDataArr.get("videoFrameRate", " - ")) self["audioChannels"].setText(self.mediaDataArr.get("audioChannels", " - ")) self["aspectRatio"].setText(self.mediaDataArr.get("aspectRatio", " - ")) self["videoResolution"].setText(self.mediaDataArr.get("videoResolution", " - ")) self["audioCodec"].setText(self.mediaDataArr.get("audioCodec", " - ")) self["file"].setText(encodeThat(self.parts.get("file", " - "))) self.bname = self.details["ratingKey"] if self.details["currentViewMode"] == "ShowEpisodesDirect": self.pname = self.details["grandparentRatingKey"] else: self.pname = self.details["parentRatingKey"] if self.currentViewType == "Backdrop": #we change this because the backdrops of episodes are low quality and will be very pixi self.changeBackdrop = False else: self.changeBackdrop = True self.changePoster = True self.resetPoster = False self.resetBackdrop = False if self.fastScroll == False or self.showMedia == True: # handle all pixmaps self.handlePopularityPixmaps() self.handleCodecPixmaps() self.handleAspectPixmaps() self.handleResolutionPixmaps() self.handleSoundPixmaps() self.handleSoundChannelsPixmaps() if self.tagType != self.lastTagType: self.showMediaFunctions() # we use this for filtermode at startup self.filterableContent = True else: raise Exception # now gather information for pictures self.getPictureInformationToLoad() # reset leaving here for next run self.leaving = False printl("", self, "C")
def syncThrougMediaLibrary(self, library, myType): printl("", self, "S") for media in library: if self.cancel: break printl("media: " + str(media), self, "D") msg_text = "\n" + str(myType) + " with ratingKey: " + str(media[1]["ratingKey"]) self.messages.push((THREAD_WORKING, msg_text)) self.messagePump.send(0) msg_text = _("title: " + encodeThat(media[1]["title"])) self.messages.push((THREAD_WORKING, msg_text)) self.messagePump.send(0) for variant in self.backdropVariants: sleep(0.2) # interupt if needed if self.cancel: break t_height = variant[0] t_width = variant[1] t_postfix = variant[2] # location string location = config.plugins.dreamplex.mediafolderpath.value + str(self.prefix) + "_" + str(media[1]["ratingKey"]) + str(t_postfix) # check if backdrop exists if fileExists(location): msg_text = _("found backdrop - size(" + str(t_width) +"x" +str(t_height)+ ")") self.messages.push((THREAD_WORKING, msg_text)) self.messagePump.send(0) continue else: if "art" in media[1] and media[1]["art"] != "": msg_text = _("backdrop not found, trying to download ...") self.messages.push((THREAD_WORKING, msg_text)) self.messagePump.send(0) #download backdrop self.downloadMedia(media[1]["art"], location, t_width, t_height) for variant in self.posterVariants: # interupt if needed if self.cancel: break t_height = variant[0] t_width = variant[1] t_postfix = variant[2] # location string location = config.plugins.dreamplex.mediafolderpath.value + str(self.prefix) + "_" + str(media[1]["ratingKey"]) + str(t_postfix) # check if poster exists if fileExists(location): msg_text = _("found poster - size(" + str(t_width) +"x" +str(t_height)+ ")") self.messages.push((THREAD_WORKING, msg_text)) self.messagePump.send(0) continue else: if "thumb" in media[1] and media[1]["thumb"] != "": msg_text = _("poster not found, trying to download ...") self.messages.push((THREAD_WORKING, msg_text)) self.messagePump.send(0) self.downloadMedia(media[1]["thumb"], location, t_width, t_height) self.decreaseQueueCount(myType=myType) msg_text = "Movies: " + str(self.movieCount) + "\n" + "Shows: " + str(self.showCount)\ + "\n" + "Seasons: " + str(self.seasonCount) + "\n" + "Episodes: " + str(self.episodeCount) \ + "\n" + "Artists: " + str(self.artistCount) + "\n" + "Albums: " + str(self.albumCount) self.progress.push((THREAD_WORKING, msg_text)) self.progressPump.send(0) printl("", self, "C")
def _refresh(self): printl("", self, "S") # we have to reset it here self.themeMusicIsRunning = False # for all view steps self["title"].setText(encodeThat(self.details.get("title", " "))) self["tag"].setText(encodeThat(self.details.get("tagline", " "))) self["shortDescription"].setText( encodeThat(self.details.get("summary", " "))) self.setDuration() self.setMediaFunctions() if self.details["currentViewMode"] == "ShowShows": printl("is ShowShows", self, "D") #self.setTitle(str(self.mediaContainer.get("title2", " "))) self["leafCount"].setText(self.details.get("leafCount", " ")) self["viewedLeafCount"].setText( self.details.get("viewedLeafCount", " ")) self["unviewedLeafCount"].setText( str( int(self.details.get("leafCount", " ")) - int(self.details.get("viewedLeafCount", " ")))) self["childCount"].setText(str(self.details.get("childCount", " "))) self["studio"].setText(encodeThat(self.details.get("studio", " "))) self["genre"].setText(self.details.get("genre", " ")) self["year"].setText(str(self.details.get("year", " - "))) self.parentSeasonId = self.details["ratingKey"] self.bname = self.details["ratingKey"] self.pname = self.details["ratingKey"] self.changeBackdrop = True self.changePoster = True self.resetPoster = True self.resetBackdrop = True # if we are a show an if playtheme is enabled we start playback here if self.playTheme and "theme" in self.details: self.startThemePlayback() if self.tagType != self.lastTagType: self.hideMediaFunctions() self.handlePopularityPixmaps() self.handleRatedPixmaps() # we use this for filtermode at startup self.filterableContent = True elif self.details["currentViewMode"] == "ShowSeasons": printl("is ShowSeasons", self, "D") printl("self.mediaContainer: " + str(self.mediaContainer), self, "D") if self.mediaContainer["title2"] == self.details["title"]: self.grandparentTitle = str( self.mediaContainer.get("title1", " ")) else: self.grandparentTitle = str( self.mediaContainer.get("title2", " ")) self["grandparentTitle"].setText(self.grandparentTitle) self["leafCount"].setText(self.details.get("leafCount", " ")) self["viewedLeafCount"].setText( self.details.get("viewedLeafCount", " ")) self["unviewedLeafCount"].setText( str( int(self.details.get("leafCount", " ")) - int(self.details.get("viewedLeafCount", " ")))) self["childCount"].setText(str(self.details.get("childCount", " "))) self.parentSeasonNr = self.details["ratingKey"] self.bname = self.parentSeasonId self.pname = self.details["ratingKey"] self.changeBackdrop = True self.changePoster = True self.resetPoster = False self.resetBackdrop = False if self.tagType != self.lastTagType: self.hideMediaFunctions() # we use this for filtermode at startup self.filterableContent = False elif self.details["currentViewMode"] == "ShowEpisodes" or self.details[ "currentViewMode"] == "ShowEpisodesDirect": printl("is ShowEpisodes", self, "D") self["tag"].setText(str(self.mediaContainer.get("title2", " "))) self["writer"].setText(encodeThat(self.details.get("writer", " "))) if self.details["currentViewMode"] == "ShowEpisodesDirect": self["tag"].setText( "Season: " + encodeThat(self.details.get("parentIndex", " "))) self["title"].setText( str(self.details.get("grandparentTitle", " "))) else: if self.grandparentTitle is not None: self["grandparentTitle"].setText(self.grandparentTitle) #self.setTitle(self.grandparentTitle) # technical details self.mediaDataArr = self.details["mediaDataArr"][0] self.parts = self.mediaDataArr["Parts"][0] self["videoCodec"].setText( self.mediaDataArr.get("videoCodec", " - ")) self["bitrate"].setText(self.mediaDataArr.get("bitrate", " - ")) self["videoFrameRate"].setText( self.mediaDataArr.get("videoFrameRate", " - ")) self["audioChannels"].setText( self.mediaDataArr.get("audioChannels", " - ")) self["aspectRatio"].setText( self.mediaDataArr.get("aspectRatio", " - ")) self["videoResolution"].setText( self.mediaDataArr.get("videoResolution", " - ")) self["audioCodec"].setText( self.mediaDataArr.get("audioCodec", " - ")) self["file"].setText(encodeThat(self.parts.get("file", " - "))) self.bname = self.details["ratingKey"] if self.details["currentViewMode"] == "ShowEpisodesDirect": self.pname = self.details["grandparentRatingKey"] else: self.pname = self.details["parentRatingKey"] if self.currentViewType == "Backdrop": #we change this because the backdrops of episodes are low quality and will be very pixi self.changeBackdrop = False else: self.changeBackdrop = True self.changePoster = True self.resetPoster = False self.resetBackdrop = False if self.fastScroll == False or self.showMedia == True: # handle all pixmaps self.handlePopularityPixmaps() self.handleCodecPixmaps() self.handleAspectPixmaps() self.handleResolutionPixmaps() self.handleSoundPixmaps() self.handleSoundChannelsPixmaps() if self.tagType != self.lastTagType: self.showMediaFunctions() # we use this for filtermode at startup self.filterableContent = True else: raise Exception # now gather information for pictures self.getPictureInformationToLoad() # reset leaving here for next run self.leaving = False printl("", self, "C")