def load_meta(self): logger.debug("Loading MPRIS2 meta data") meta_data = self.last_properties["Metadata"] # Format properties that need formatting bitrate = g15pythonlang.value_or_default(meta_data, "xesam:audioBitrate", 0) if bitrate == 0: bitrate = "" else: bitrate = str(bitrate / 1024) self.playing_uri = g15pythonlang.value_or_blank(meta_data, "xesam:url") self.playing_track_id = g15pythonlang.value_or_blank( meta_data, "mpris:trackid") self.playing_title = g15pythonlang.value_or_blank( meta_data, "xesam:title") self.playing_artist = g15pythonlang.value_or_blank( meta_data, "xesam:artist") self.playing_album = g15pythonlang.value_or_blank( meta_data, "xesam:album") # General properties self.song_properties = { "status": self.status, "tracklist": len(self.tracks) > 0, "uri": self.playing_uri, "track_id": self.playing_track_id, "title": g15pythonlang.value_or_blank(meta_data, "xesam:title"), "art_uri": g15pythonlang.value_or_blank(meta_data, "mpris:artUrl"), "genre": ",".join( list(g15pythonlang.value_or_empty(meta_data, "xesam:genre"))), "track_no": g15pythonlang.value_or_blank(meta_data, "xesam:trackNumber"), "artist": ",".join( list(g15pythonlang.value_or_empty(meta_data, "xesam:artist"))), "album": g15pythonlang.value_or_blank(meta_data, "xesam:album"), "bitrate": bitrate, "rating": g15pythonlang.value_or_default(meta_data, "xesam:userRating", 0.0), "album_artist": ",".join( list( g15pythonlang.value_or_empty(meta_data, "xesam:albumArtist"))), } self.duration = g15pythonlang.value_or_default( meta_data, "mpris:length", 0) / 1000 / 1000 self.process_properties()
def load_song_details(self): meta_data = self.player.GetMetadata() # Format properties that need formatting bitrate = g15pythonlang.value_or_default(meta_data,"audio-bitrate", 0) if str(bitrate) == "0": bitrate = "" self.playing_uri = g15pythonlang.value_or_blank(meta_data,"location") self.duration = g15pythonlang.value_or_default(meta_data,"time", 0) if self.duration == 0: self.duration = g15pythonlang.value_or_default(meta_data,"mtime", 0) / 1000 # General properties self.song_properties = { "status": self.status, "uri": self.playing_uri, "art_uri": g15pythonlang.value_or_blank(meta_data,"arturl"), "title": g15pythonlang.value_or_blank(meta_data,"title"), "genre": g15pythonlang.value_or_blank(meta_data,"genre"), "track_no": g15pythonlang.value_or_blank(meta_data,"tracknumber"), "artist": g15pythonlang.value_or_blank(meta_data,"artist"), "album": g15pythonlang.value_or_blank(meta_data,"album"), "bitrate": bitrate, "rating": g15pythonlang.value_or_default(meta_data,"rating", 0.0), "album_artist": g15pythonlang.value_or_blank(meta_data,"mb album artist"), } self.process_properties()
def load_meta(self): logger.debug("Loading MPRIS2 meta data") meta_data = self.last_properties["Metadata"] # Format properties that need formatting bitrate = g15pythonlang.value_or_default(meta_data,"xesam:audioBitrate", 0) if bitrate == 0: bitrate = "" else: bitrate = str(bitrate / 1024) self.playing_uri = g15pythonlang.value_or_blank(meta_data,"xesam:url") self.playing_track_id = g15pythonlang.value_or_blank(meta_data,"mpris:trackid") self.playing_title = g15pythonlang.value_or_blank(meta_data,"xesam:title") self.playing_artist = g15pythonlang.value_or_blank(meta_data,"xesam:artist") self.playing_album = g15pythonlang.value_or_blank(meta_data,"xesam:album") # General properties self.song_properties = { "status": self.status, "tracklist": len(self.tracks) > 0, "uri": self.playing_uri, "track_id": self.playing_track_id, "title": g15pythonlang.value_or_blank(meta_data,"xesam:title"), "art_uri": g15pythonlang.value_or_blank(meta_data,"mpris:artUrl"), "genre": ",".join(list(g15pythonlang.value_or_empty(meta_data,"xesam:genre"))), "track_no": g15pythonlang.value_or_blank(meta_data,"xesam:trackNumber"), "artist": ",".join(list(g15pythonlang.value_or_empty(meta_data,"xesam:artist"))), "album": g15pythonlang.value_or_blank(meta_data,"xesam:album"), "bitrate": bitrate, "rating": g15pythonlang.value_or_default(meta_data,"xesam:userRating", 0.0), "album_artist": ",".join(list(g15pythonlang.value_or_empty(meta_data,"xesam:albumArtist"))), } self.duration = g15pythonlang.value_or_default(meta_data, "mpris:length", 0) / 1000 / 1000 self.process_properties()
def value_or_blank(d, key): return g15pythonlang.value_or_blank(d, key)