An album bills nobody and names no ids of its own #35
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
An album's row carries its artists in
ArtistsandAlbumArtists(#24), butnothing is billed for it: upstream writes one
PeopleBaseItemMaprow per albumartist and per artist, and a
MusicAlbumnames no external ids of its own.Measured against the reference library:
Upstream's rules, both in
MediaBrowser.Providers/Music/AlbumMetadataService.cs:SetPeoplebills the album artists asAlbumArtistand the artists asArtist, in that order, deduplicated — which is the shapecrates/jellyfin-app/src/scan/people.rs::of_trackalready produces.SetProviderIdFromSongstakesMusicBrainzAlbum,MusicBrainzReleaseGroupandMusicBrainzAlbumArtistfrom the tracks: theid most of them name, ties going to the first.
Both are summarised from the tracks, so they belong beside the columns in
crates/jellyfin-app/src/scan/summary.rs. Neither needs anything the scan doesnot already read — the ids are on the track rows, and the artists are what the
album was just described with.
Note that filing the album row a second time already clears
PeopleBaseItemMapfor it (savebills every write), so whatever writes thepeople has to be the description itself rather than a step beside it.
Fixed and merged.
An album is billed for the artists it was described with — album artists first,
then artists, deduplicated — and names the ids most of its tracks name, taking
MusicBrainzAlbum,MusicBrainzReleaseGroupandMusicBrainzAlbumArtistbythe same vote upstream uses, where a track naming none votes against having one.
The billing is part of the description rather than a step beside it, which is
what the issue asked for: filing a row clears who it bills, and the described
row is the last one filed.
Measured on the reference library:
A database an older build wrote comes forward whole: the description is compared
on who it bills as well as on its columns, so an album whose columns already
agreed is no longer judged described and left unbilled. Two spellings of one
name are one person, so a row billing
Lady Gagafor a column readingLady GaGais one already billed rather than one to describe again on everyscan.