swingmx / swingmusic

Swing Music is a beautiful, self-hosted music player for your local audio files. Like a cooler Spotify ... but bring your own music.
https://swingmx.com
MIT License
666 stars 41 forks source link

Tags not splitting when processed with Picard #184

Open sortedcord opened 4 months ago

sortedcord commented 4 months ago

Whenever there are multiple artists present in the artist tag of any track:

image

Swing only ends up taking the first entry of the artists:

image

But when I change it to use comma instead of the semi-colon, swing does take all the entries:

image

image

This is not just limited to artists, but also happens with the genre tag as well... I have also made sure separators setting has all , ; /

sortedcord commented 4 months ago

I tried to look into this more, and found this to be an issue with Musicbrainz Picard and it's tagging system not working with swing apparently? I'll continue dig into this and share my findings.

cwilvx commented 4 months ago

@sortedcord

Maybe be a problem with Picard or not, can you DM me this specific file on Telegram for reproduction? It might also be a problem with the TinyTag library that we use to read tags. I can try to figure that out with a sample.

sortedcord commented 4 months ago

From what I know is that there are 2 ways of storing multiple artists in ID3:

1) One value, separated by delimeters:

image

I believe this is what the swing's tagging system was designed for and it does work as intended.

2) Multiple Values (without delimiters):

image

This is picard and other prominent (desktop) music taggers handle multiple artists. The multiple values are not parsed by swing and only the first value is read...

sortedcord commented 4 months ago

1. Willow Tree.zip Here is the file that has the artists formatted in the second way.

mathiascode commented 4 months ago

It might also be a problem with the TinyTag library that we use to read tags. I can try to figure that out with a sample.

Coincidentally, I've added support for reading multiple artists in tinytag the other day (will be available in the 2.0.0 release). Multiple artists are stored in the 'artist' attribute, separated with a null character (\x00).

cwilvx commented 4 months ago

Hello @mathiascode

Thank you for the comment on this issue. I'll wait for the new release and test with it.

I can't thank you enough for your work on TinyTag, great software. I absolutely love it. Thanks a lot.