def __init__(self, session, sref, playlist, playlistName, playlistCB): self.onPlayService = [] self.sref = sref MoviePlayer.__init__(self, session, sref) InfoBarPlaylist.__init__(self, playlist, playlistCB, playlistName) # SubsSupport.__init__(self, subPath=subtitles, alreadyPlaying=True) self.skinName = "MoviePlayer"
def __init__(self, session, sref, playlist, playlistName, playlistCB): self.onPlayService = [] self.sref = sref MoviePlayer.__init__(self, session, sref) onStartShow = repeat = len(playlist) > 1 autoPlay = False InfoBarPlaylist.__init__(self, playlist, playlistCB, playlistName, autoPlay=autoPlay, repeat=repeat, onStartShow=onStartShow, showProtocol=True) # SubsSupport.__init__(self, subPath=subtitles, alreadyPlaying=True) self.skinName = "MoviePlayer"
def __init__(self, session, sref, playlist, playlistName, playlistCB, subtitles=None, autoPlay=True, showProtocol=False, onStartShow=False, repeat=False): BaseArchivCZSKScreen.__init__(self, session) self.onPlayService = [] self.settings = config.plugins.archivCZSK.videoPlayer self.sref = sref # # set default/non-default skin according to SD/HD mode if self.settings.useDefaultSkin.getValue(): self.setSkinName("MoviePlayer") else: HD = getDesktop(0).size().width() == 1280 if HD: self.setSkin("ArchivCZSKMoviePlayer_HD") else: self.setSkinName("MoviePlayer") # # init custom infobar (added info about download speed, buffer level..) ArchivCZSKMoviePlayerInfobar.__init__(self) # # custom actions for MP self["actions"] = HelpableActionMap(self, "ArchivCZSKMoviePlayerActions", { "leavePlayer": (self.leavePlayer, _("leave player?")), "toggleShow": (self.toggleShow, _("show/hide infobar")), "audioSelection":(self.audioSelection, _("show audio selection menu")), "refreshSubs":(self.refreshSubs, _("refreshing subtitles position")), "subsDelayInc":(self.subsDelayInc, _("increasing subtitles delay")), "subsDelayDec":(self.subsDelayDec, _("decreasing subtitles delay")) }, -3) InfoBarBase.__init__(self, steal_current_service=True) # init of all inherited screens for x in HelpableScreen, InfoBarShowHide, \ InfoBarSeek, InfoBarAudioSelection, InfoBarNotifications, \ InfoBarServiceNotifications, HelpableScreen, InfoBarPVRState, \ InfoBarAspectChange, InfoBarServiceErrorPopupSupport: x.__init__(self) # init subtitles initSubsSettings() SubsSupport.__init__(self, subsPath=subtitles, defaultPath=config.plugins.archivCZSK.subtitlesPath.getValue(), forceDefaultPath=True, searchSupport=True) # playlist support InfoBarPlaylist.__init__(self, playlist, playlistCB, playlistName, autoPlay=autoPlay, onStartShow=onStartShow, repeat=repeat, showProtocol=showProtocol) # to get real start of service, and for queries for video length/position self.video = Video(session) # # bindend some video events to functions self.__event_tracker = ServiceEventTracker(screen=self, eventmap= { iPlayableService.evStart: self.__serviceStarted, iPlayableService.evUpdatedEventInfo: self.__evUpdatedEventInfo, iPlayableService.evUser + 10: self.__evAudioDecodeError, iPlayableService.evUser + 11: self.__evVideoDecodeError, iPlayableService.evUser + 12: self.__evPluginError, }) self.statusDialog = session.instantiateDialog(StatusScreen) self.onClose.append(self.statusDialog.doClose) self.isStream = self.sref.getPath().find('://') != -1 self.returning = False