[READ-ONLY] Mirror of https://github.com/FoxxMD/multi-scrobbler. Scrobble plays from multiple sources to multiple clients docs.multi-scrobbler.app
deezer docker jellyfin koito lastfm listenbrainz maloja mopidy mpris music music-assistant plex scrobble self-hosted spotify subsonic tautulli youtube-music
0

Configure Feed

Select the types of activity you want to include in your feed.

fix(plex): Do not use album artist MBID when existing artist or is VA #450

FoxxMD (Jan 29, 2026, 6:58 PM UTC) 995f857b 073af2d3

+9 -2
+8 -2
src/backend/sources/PlexApiSource.ts
··· 5 5 asPlayerStateDataMaybePlay, 6 6 FormatPlayObjectOptions, 7 7 InternalConfig, 8 + MBID_VARIOUS_ARTISTS, 8 9 NO_USER, 9 10 PlayerStateData, 10 11 PlayerStateDataMaybePlay, ··· 424 425 track: trackMbId, 425 426 album: albumMbId, 426 427 // Plex doesn't track MBIDs for track artists, so we use the 427 - // album artist MBID instead. 428 - artist: albumArtistMbId !== undefined 428 + // album artist MBID instead BUT ONLY if 429 + // * artists aren't populated 430 + // * or artists == albumArtists 431 + // AND explicitly *do not* allow Various Artists MBID for artists 432 + // -- 433 + // otherwise we might accidentally set "Various Artists" like MBIDs as actual artist 434 + artist: albumArtistMbId !== undefined && albumArtistMbId !== MBID_VARIOUS_ARTISTS && (sessionData[0].play.data.artists.length === 0 || sessionData[0].play.data.artists.every(y => (sessionData[0].play.data.albumArtists ?? []).includes(y))) 429 435 ? [...new Set([...(prevBrainzMeta.artist ?? []), albumArtistMbId])] 430 436 : prevBrainzMeta.artist, 431 437 albumArtist: albumArtistMbId !== undefined
+1
src/backend/common/infrastructure/Atomic.ts
··· 397 397 } 398 398 399 399 export const MUSICBRAINZ_URL = 'https://musicbrainz.org'; 400 + export const MBID_VARIOUS_ARTISTS = "89ad4ac3-39f7-470e-963a-56509c546377"; 400 401 401 402 export type MusicBrainzSingletonMap = Map<string,MusicBrainzApi>;