def GetRawLyrics(self, metadata): if isinstance(metadata, dict): metadata = Metadata.from_dict(metadata) uri = self.find_lrc_from_db(metadata) lrc = None if uri: if uri == 'none:': return True, uri, '' lrc = load_from_uri(uri) if lrc is not None: return True, uri, lrc uri = self.find_lrc_by_pattern(metadata) if uri: lrc = load_from_uri(uri) if lrc is not None: logging.info( "LRC for track %s not found in db but fount by pattern: %s" % (metadata_description(metadata), uri)) if lrc is None: logging.info("LRC for track %s not found" % metadata_description(metadata)) return False, '', '' else: logging.info("LRC for track %s found: %s" % (metadata_description(metadata), uri)) return True, uri, lrc
def SetLyricContent(self, metadata, content): metadata = Metadata.from_dict(metadata) # Remove any existing file association and save the new lyrics content # to the configured patterns. self._db.delete(metadata) uri = self._save_to_patterns(metadata, content.rstrip(b'\0')) if uri and metadata == self._metadata: self.CurrentLyricsChanged() return uri
def __init__(self, ): osdlyrics.App.__init__(self, 'Daemon', False) self._player = player.PlayerSupport(self.connection) self._lyrics = lyrics.LyricsService(self.connection) self._connect_metadata_signal() self._activate_config() self.request_bus_name(osdlyrics.APP_MPRIS2_NAME) self._daemon_object = DaemonObject(self) self._lyricsource = lyricsource.LyricSource(self.connection) self._lyrics.set_current_metadata(Metadata.from_dict(self._player.current_player.Metadata))
def SetLyricContent(self, metadata, content): if isinstance(metadata, dict): metadata = Metadata.from_dict(metadata) uri = self.find_lrc_from_db(self._metadata) if uri is None or not save_to_uri(uri, content, False): uri = '' if uri == '': uri = self._save_to_patterns(metadata, content) if uri and metadata_equal(metadata, self._metadata): self.CurrentLyricsChanged() return uri
def __init__(self, ): App.__init__(self, 'Daemon', False) self._player = player.PlayerSupport(self.connection) self._lyrics = lyrics.LyricsService(self.connection) self._connect_metadata_signal() self._activate_config() self.request_bus_name(DAEMON_MPRIS2_NAME) self._daemon_object = DaemonObject(self) self._lyricsource = lyricsource.LyricSource(self.connection) self._lyrics.set_current_metadata( Metadata.from_dict(self._player.current_player.Metadata))
def GetRawLyrics(self, metadata): if isinstance(metadata, dict): metadata = Metadata.from_dict(metadata) uri = self.find_lrc_from_db(metadata) lrc = None if uri: if uri == 'none:': return True, uri, '' lrc = load_from_uri(uri) if lrc is not None: return True, uri, lrc uri = self.find_lrc_by_pattern(metadata) if uri: lrc = load_from_uri(uri) if lrc is not None: logging.info("LRC for track %s not found in db but found by pattern: %s", metadata_description(metadata), uri) if lrc is None: logging.info("LRC for track %s not found", metadata_description(metadata)) return False, '', '' else: logging.info("LRC for track %s found: %s", metadata_description(metadata), uri) return True, uri, lrc
def AssignLyricFile(self, metadata, filepath): if (isinstance(metadata, dict)): metadata = Metadata.from_dict(metadata) self.assign_lrc_uri(metadata, osdlyrics.utils.path2uri(filepath))
def AssignLyricFile(self, metadata, uri): metadata = Metadata.from_dict(metadata) self.assign_lrc_uri(metadata, uri)
def get_metadata(self): mt = self._player.GetMetadata() logging.debug(repr(mt)) return Metadata.from_dict(mt)
def _player_properties_changed(self, iface, changed, invalidated): if 'Metadata' in changed: self._lyrics.set_current_metadata( Metadata.from_dict(changed['Metadata']))
def _track_change_cb(self, metadata): metadata = Metadata.from_dict(metadata) self.track_changed(metadata)
def _player_properties_changed(self, iface, changed, invalidated): if 'Metadata' in changed: self._lyrics.set_current_metadata(Metadata.from_dict(changed['Metadata']))
def get_metadata(self): mt = self._player.GetMetadata() print mt return Metadata.from_dict(mt)