def bootstrap_initialise(self): """ Check to see if we have any media Player's available. """ log.debug('_check_available_media_players') controller_dir = os.path.join(AppLocation.get_directory(AppLocation.AppDir), 'core', 'ui', 'media') for filename in os.listdir(controller_dir): if filename.endswith('player.py') and not filename == 'mediaplayer.py': path = os.path.join(controller_dir, filename) if os.path.isfile(path): module_name = 'openlp.core.ui.media.' + os.path.splitext(filename)[0] log.debug('Importing controller %s', module_name) try: __import__(module_name, globals(), locals(), []) # On some platforms importing vlc.py might cause # also OSError exceptions. (e.g. Mac OS X) except (ImportError, OSError): log.warning('Failed to import %s on path %s', module_name, path) player_classes = MediaPlayer.__subclasses__() for player_class in player_classes: player = player_class(self) self.register_players(player) if not self.media_players: return False saved_players, overridden_player = get_media_players() invalid_media_players = \ [media_player for media_player in saved_players if media_player not in self.media_players or not self.media_players[media_player].check_available()] if invalid_media_players: for invalidPlayer in invalid_media_players: saved_players.remove(invalidPlayer) set_media_players(saved_players, overridden_player) self._set_active_players() self._generate_extensions_lists() return True
def override_player_changed(index): """ The Player has been overridden :param index: Index """ player = get_media_players()[0] if index == 0: set_media_players(player) else: set_media_players(player, player[index - 1])
def override_player_changed(self, index): """ The Player has been overridden :param index: Index """ player = get_media_players()[0] if index == 0: set_media_players(player) else: set_media_players(player, player[index - 1])
def save(self): """ Save the settings """ settings = Settings() settings.beginGroup(self.settings_section) settings.setValue('background color', self.background_color) settings.endGroup() old_players, override_player = get_media_players() if self.used_players != old_players: # clean old Media stuff set_media_players(self.used_players, override_player) self.settings_form.register_post_process('mediaitem_suffix_reset') self.settings_form.register_post_process('mediaitem_media_rebuild') self.settings_form.register_post_process('config_screen_changed')
def save(self): """ Save the settings """ player_string_changed = False settings = Settings() settings.beginGroup(self.settingsSection) settings.setValue(u'background color', self.bg_color) settings.endGroup() old_players, override_player = get_media_players() if self.usedPlayers != old_players: # clean old Media stuff set_media_players(self.usedPlayers, override_player) player_string_changed = True if player_string_changed: self.service_manager.reset_supported_suffixes() Receiver.send_message(u'mediaitem_media_rebuild') Receiver.send_message(u'config_screen_changed')
def bootstrap_initialise(self): """ Check to see if we have any media Player's available. """ log.debug('_check_available_media_players') controller_dir = os.path.join( AppLocation.get_directory(AppLocation.AppDir), 'core', 'ui', 'media') for filename in os.listdir(controller_dir): if filename.endswith( 'player.py') and not filename == 'mediaplayer.py': path = os.path.join(controller_dir, filename) if os.path.isfile(path): module_name = 'openlp.core.ui.media.' + os.path.splitext( filename)[0] log.debug('Importing controller %s', module_name) try: __import__(module_name, globals(), locals(), []) # On some platforms importing vlc.py might cause # also OSError exceptions. (e.g. Mac OS X) except (ImportError, OSError): log.warning('Failed to import %s on path %s', module_name, path) player_classes = MediaPlayer.__subclasses__() for player_class in player_classes: player = player_class(self) self.register_players(player) if not self.media_players: return False saved_players, overridden_player = get_media_players() invalid_media_players = \ [media_player for media_player in saved_players if media_player not in self.media_players or not self.media_players[media_player].check_available()] if invalid_media_players: for invalidPlayer in invalid_media_players: saved_players.remove(invalidPlayer) set_media_players(saved_players, overridden_player) self._set_active_players() self._generate_extensions_lists() return True
def bootstrap_initialise(self): """ Check to see if we have any media Player's available. """ controller_dir = os.path.join('core', 'ui', 'media') # Find all files that do not begin with '.' (lp:#1738047) and end with player.py glob_pattern = os.path.join(controller_dir, '[!.]*player.py') extension_loader(glob_pattern, ['mediaplayer.py']) player_classes = MediaPlayer.__subclasses__() for player_class in player_classes: self.register_players(player_class(self)) if not self.media_players: return False saved_players, overridden_player = get_media_players() invalid_media_players = \ [media_player for media_player in saved_players if media_player not in self.media_players or not self.media_players[media_player].check_available()] if invalid_media_players: for invalidPlayer in invalid_media_players: saved_players.remove(invalidPlayer) set_media_players(saved_players, overridden_player) self._set_active_players() self._generate_extensions_lists() return True
def overridePlayerChanged(self, index): player = get_media_players()[0] if index == 0: set_media_players(player) else: set_media_players(player, player[index-1])