I took my idea with the “performers” and made a script. Unfortunately, it would only work under ideal conditions, which are not to be expected.
I write the information to a multi-value “albumartists” tag, which I use for Kodi - “albumartist” is not multi-value.
$setmulti(_myperformers,$performer(,;),;)
$foreach(%_myperformers%,$if($rsearch(%albumartist%,%_loop_value%),$copymerge(_myalbumartists,_loop_value),))
$setmulti(albumartists,$if2(%_myalbumartists%,%_albumartists%))
It works for…
Electric Bath by The Don Ellis Orchestra
Standards Live by Keith Jarrett, Gary Peacock, Jack DeJohnette
Welcome to Us by “Dennis Gonzalez Band of Nordic Wizards” (currently not a group but “Dennis Gonzalez credited as”)
The script could be adapted to work for formations where an eponymous band leader is not a performer but has another role.
But it will ultimately fail, if there are no performers, misspelt performers, abbreviated performers, etc.
Here is what I really do:
$setmulti(albumartists,$if2($rsearch(%comment%,A{\(.*\)}),%_albumartists%))
I write A{Don Ellis}
to the comment tag of a “Don Ellis Orchestra” album, save and refresh. The first time it is necessary to save twice, because the value must be present in the comment so that it can be used by the script. It will also work for “albumartist”.