X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Flib%2Ftrack.py;h=6c2835146dc9c90021c20d67e249245dee07af93;hb=24cc6f0ba625f217d6127fc0cee880b22a8c6cbf;hp=5b25bd33527bad5e94ef2eb043990a1eb4dc755b;hpb=0264d2f9cea7c5e60ac71234ee4f7de78b338850;p=mpd-sima.git diff --git a/sima/lib/track.py b/sima/lib/track.py index 5b25bd3..6c28351 100644 --- a/sima/lib/track.py +++ b/sima/lib/track.py @@ -33,7 +33,7 @@ class Track: def __init__(self, file=None, time=0, pos=-1, **kwargs): self.title = self.artist = self.album = self.albumartist = '' - self.musicbrainz_artistid = None + self.musicbrainz_artistid = self.musicbrainz_albumartistid = None self.pos = int(pos) self._empty = False self._file = file @@ -42,9 +42,10 @@ class Track: self._time = time self.__dict__.update(**kwargs) self.tags_to_collapse = ['artist', 'album', 'title', 'date', - 'genre', 'albumartist'] + 'genre', 'albumartist', + 'musicbrainz_artistid', + 'musicbrainz_albumartistid'] # have tags been collapsed? - self.collapse_tags_bool = False self.collapsed_tags = list() # Needed for multiple tags which returns a list instead of a string self.collapse_tags() @@ -58,7 +59,6 @@ class Track: if tag not in self.tags_to_collapse: continue if isinstance(value, list): - self.collapse_tags_bool = True self.collapsed_tags.append(tag) self.__dict__.update({tag: ', '.join(set(value))}) @@ -127,11 +127,15 @@ class Track: return time.strftime(fmt, temps) def get_artist(self): - """Get artist object from track""" - name = self.artist - if self.albumartist and self.albumartist != 'Various Artists': - name = self.albumartist - return Artist(name=name, mbid=self.musicbrainz_artistid) + """Get artist object from track""" + name = self.artist + mbid = self.musicbrainz_artistid + if self.albumartist and self.albumartist != 'Various Artists': + name = self.albumartist.split(', ')[0] + if (self.musicbrainz_albumartistid and + self.musicbrainz_albumartistid != '89ad4ac3-39f7-470e-963a-56509c546377'): + mbid = self.musicbrainz_albumartistid.split(', ')[0] + return Artist(name=name, mbid=mbid) # VIM MODLINE # vim: ai ts=4 sw=4 sts=4 expandtab