2024-07-14, 14:28
For months now I've been trying to get consistent artist sorting behavior out of Kodi, but to no avail. I've tried to reproduce the problem below. I have no advancedsettings.xml file, so as far as that is concerned we're only looking at default Kodi behavior here. Relevant settings:
I deleted the MyMusicXX.db file and rebooted to create a new, clean database. Then I scanned the album "Tunnel Trance Force 22" by various artists (MusicBrainz release ID dc5e3047-1fa0-40b7-9ade-ae16d5bbd057). This is now the ONLY album in the database. Under MainMenu->MusicArtists the following list of artists appears:
This is inconsistent. Multiple artists in the 'Artists' tag are listed separately, as one would expect. However, only the first artist (Lovestern Galaktika Project) is sorted as per the Artist Sort Order tag. The others are listed by first name.
Let's look at another "problem entry", Sven De Mar who appears on track 13 (and only there):
Once again the second artist in the Artist Sort Order field is sorted inconsistently (by first name). In contrast, entries 2 and 4in the lists of artists (DJ Bart and DJ C7, respectively) are sorted correctly. They appear on track 2 and 1 respectively, tagged as follows:
and
I have repeated the above exercise with different albums (each time starting with a clean database) and this inconsistent behavior is consistent: when there are multiple artists in the artists field, only the first entry is sorted correctly, the rest simply by whatever characters the string starts with.
Is this a feature, a bug, or a lack of understanding on my part?
Edit: it's been decades since I did any serious C coding, but in the source I see the following:
Which suggests that what I'm seeing here is not the intended behavior.
// FvW
- Default provider for album information: Generic Album Scraper
- Default provider for artist information: Generic Artist Scraper
- Prefer online information: OFF
- Use artist sortname when sorting by artist: ON
I deleted the MyMusicXX.db file and rebooted to create a new, clean database. Then I scanned the album "Tunnel Trance Force 22" by various artists (MusicBrainz release ID dc5e3047-1fa0-40b7-9ade-ae16d5bbd057). This is now the ONLY album in the database. Under MainMenu->MusicArtists the following list of artists appears:
- 666
- DJ Bart
- Beam vs. Cyrus
- DJ C7
- Divino
- Goddess
- Godfather's Dome
- JFS
- Lothos
- Lovestern Galaktika Project
- Malixx
- Megara vs. DJ Lee
- Nightflow
- Nightsliders
- Ole van Dansk
- Pulsedriver
- Sunfactor
- Sven De Mar
- Trance Allstars
- Various Artists
- Vincent Vega
- Wavescope
- Artist: Lovestern Galaktika Project meets Pulsedriver & Ole van Dansk
- Artists: Lovestern Galaktika Project; Pulsedriver; Ole van Dansk
- Artist Sort Order: Lovestern Galaktika Project meets Pulsedriver & Dansk, Ole van
- Album Artist: Various Artists
- Album Artist Sort Order: Various Artists
This is inconsistent. Multiple artists in the 'Artists' tag are listed separately, as one would expect. However, only the first artist (Lovestern Galaktika Project) is sorted as per the Artist Sort Order tag. The others are listed by first name.
Let's look at another "problem entry", Sven De Mar who appears on track 13 (and only there):
- Artist: Vincent Vega meets Sven De Mar
- Artists: Vincent Vega; Sven De Mar
- Artist Sort Order: Vega, Vincent meets De Mar, Sven
- Album Artist: Various Artists
- Album Artist Sort Order: Various Artists
Once again the second artist in the Artist Sort Order field is sorted inconsistently (by first name). In contrast, entries 2 and 4in the lists of artists (DJ Bart and DJ C7, respectively) are sorted correctly. They appear on track 2 and 1 respectively, tagged as follows:
- Artist: DJ C7
- Artists: DJ C7
- Artist Sort Order: C7, DJ
and
- Artist: DJ Bart
- Artists: DJ Bart
- Artist Sort Order: Bart, DJ
I have repeated the above exercise with different albums (each time starting with a clean database) and this inconsistent behavior is consistent: when there are multiple artists in the artists field, only the first entry is sorted correctly, the rest simply by whatever characters the string starts with.
Is this a feature, a bug, or a lack of understanding on my part?
Edit: it's been decades since I did any serious C coding, but in the source I see the following:
Code:
//Split the artist sort string to try and get sort names for individual artists
Which suggests that what I'm seeing here is not the intended behavior.
// FvW