spotDL / spotify-downloader

Download your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found).
https://spotdl.readthedocs.io/en/latest/
MIT License
17.18k stars 1.58k forks source link

Apply Spotify's album artist instead of using the same value for both artist and album artist #415

Closed RudeySH closed 5 years ago

RudeySH commented 5 years ago

What is the purpose of your issue?

Description

When downloading an album that was put together by a single artist, while the tracklists contains various tracks by multiple different artists, the downloaded files will each specify different album artists. It seems the album artist will always be the same as the artist. This causes every single track of the example album below to appear as a separate album in media players like iTunes.

The proper usage of the album artist metadata would be to specify the artist name that "owns" the album on Spotify for each track, even though the individual tracks can have different artists. When done correctly, media players will automatically understand all tracks are part of a single album.

https://open.spotify.com/album/3lRqLudF94UtGUmTM2bjfd?si=7X8V9HYARKG_KgD_oUgtoQ spotdl -b spotify:album:3lRqLudF94UtGUmTM2bjfd

tillhainbach commented 5 years ago

you can use meta_tags['album']['artists'][0]['name'] for the album artist

see: https://developer.spotify.com/documentation/web-api/reference/object-model/#album-object-simplified

ritiek commented 5 years ago

Yep, that sounds a good idea. Would you like to make a pull request @tillhainbach?

tillhainbach commented 5 years ago

I've created the pull request.

If you want to add better handling of Spotify metadata (e.g. find a tracks version, remixer etc.), you can have a look add my spotitagger repo (https://github.com/tillhainbach/spotitagger) which basically arose from this project. It also has some got methods for requesting metadata for multiple tracks at once, e.g. fetching the metadata for all tracks in a playlist in one request rather than looping through every track (speeds up things a little)

ritiek commented 5 years ago

@tillhainbach Thanks! This seems interesting. I'll take a look.