diff --git a/streamrip/media/playlist.py b/streamrip/media/playlist.py index bf3bbbe9..341f70da 100644 --- a/streamrip/media/playlist.py +++ b/streamrip/media/playlist.py @@ -65,12 +65,15 @@ async def resolve(self) -> Track | None: ) self.db.set_failed(self.client.source, "track", self.id) return None - + + meta.compilation = 1 c = self.config.session.metadata if c.renumber_playlist_tracks: meta.tracknumber = self.position if c.set_playlist_to_album: album.album = self.playlist_name + album.albumartist = "Playlist" + quality = self.config.session.get_source(self.client.source).quality try: diff --git a/streamrip/metadata/tagger.py b/streamrip/metadata/tagger.py index 9ed81734..9271e19e 100644 --- a/streamrip/metadata/tagger.py +++ b/streamrip/metadata/tagger.py @@ -182,6 +182,7 @@ def _attr_from_meta(self, meta: TrackMetadata, attr: str) -> str | None: "tracknumber", "discnumber", "composer", + "compilation", "isrc", } if attr in in_trackmetadata: diff --git a/streamrip/metadata/track.py b/streamrip/metadata/track.py index 72c6c612..f7ce3ed0 100644 --- a/streamrip/metadata/track.py +++ b/streamrip/metadata/track.py @@ -31,6 +31,7 @@ class TrackMetadata: tracknumber: int discnumber: int composer: str | None + compilation: int = 0 isrc: str | None = None @classmethod @@ -208,6 +209,7 @@ def from_tidal(cls, album: AlbumMetadata, track) -> TrackMetadata: tracknumber=tracknumber, discnumber=discnumber, composer=None, + compilation=0, isrc=isrc, )