Hi, I tried to change the artist tags to make them the same as when downloaded through the bandcamp website, for example:
an album is by the album artist "A and B", and there are two tracks: "song 1" by "A" and "song 2" by "B
when downloading from bandcamp's website, the track names stay "song 1" and "song 2", the album artist in both songs is "A and B", the artists are "A" and "B" respectively
when downloading with upstream bandcamp-dl, the songs are named "A - song 1" and "B - song 2", the album artist is empty, and the artist for both songs are "A and B"
Some music player apps will say that an album has no artist if only the "artist" tags are filled but not "album artist", it's also pretty annoying downloading splits or compilations and having the artists in the track name, instead of the artist tag where they belong.
So, this fork should behave the same as when downloading from bandcamp's website. I've tested it on 3 different cases (single, album by a single artist, album by multiple artists) and so far it seems OK. The changes are:
put album artist in the "album artist" tag
put track artist in the "artist" tag if it exists, if not then use album artist
if an album has multiple artists, don't put artist in the track name (removes first occurrence of a "{Artist} - " string. a little hacky, but I didn't see a track name without an artist name in the JSON...)
added {trackartist} to the template, and made {artist} use the album artist, so by default albums with multiple artists stay in a single folder named after the album artist
it'd be nicer to add {albumartist} and have {artist} mean "track artist" so it's consistent with the usual tag names, but that would mess with people's existing configs...
And some minor things I came across along the way:
if there isn't a track number, use "1"
singles don't seem to have a track numbers on Bandcamp, so they would end up with "None" in the "track" tag. it doesn't cause any real problems to my knowledge, but for example eyeD3 throws warnings when it sees it
if the "-e" option is used but a track doesn't have lyrics, keep them blank instead of writing "lyrics unavailable" in the metadata (is there a reason for why it does that?)
if a template fails to load from config (it happened to me once, but I don't know why) put files in current folder instead of trying to put them in the config folder, which would create a folder called "None"
PS: sorry in advance if I'm doing something wrong, it's my first time making a pull request :-)
Hi, I tried to change the artist tags to make them the same as when downloaded through the bandcamp website, for example:
Some music player apps will say that an album has no artist if only the "artist" tags are filled but not "album artist", it's also pretty annoying downloading splits or compilations and having the artists in the track name, instead of the artist tag where they belong.
So, this fork should behave the same as when downloading from bandcamp's website. I've tested it on 3 different cases (single, album by a single artist, album by multiple artists) and so far it seems OK. The changes are:
And some minor things I came across along the way:
PS: sorry in advance if I'm doing something wrong, it's my first time making a pull request :-)