beetbox / beetbox/beets

Put multiple artist MBIDs into artist fields

Open
#3,107 4 comments 1 reaction 0 assignees View on GitHub
feature
Dominant language
Python
Stars
15.7k
Forks
2.1k
Avg merge
4d 21h
Merged PRs (30d)
31

Description

### Problem
Not sure if this is an actual problem or a feature request. When more than one artist performs a song, the field mb_artistid contains two (or more) ids, separated by slashes. Take for instance "Right Here, Right Now" which is on the Blade II soundtrack performed by Ice Cube and Paul Oakenfold:
https://musicbrainz.org/recording/236d562f-f1e1-46be-b6ed-d690e391bafa

When running mbsync on this release, it preserves only Ice Cube as the performer (because it's the first entry). The output of mbsync is the following:

```
01-04 Ice Cube & Paul Oakenfold - Right Here, Right Now, Blade II: The Soundtrack (2002), 3:46, (20965, album 1785, 160kbps)
albumstatus: official -> Official
original_day: 00 -> 12
albumartist_sort: -> Various Artists
mb_artistid: 1d11e2a1-4531-4d61-a8c7-7b5c6a608fd2/7bf1f441-ccf1-4258-9797-07c8d16eb44c -> 1d11e2a1-4531-4d61-a8c7-7b5c6a608fd2
albumartist_credit: -> Various Artists
original_month: 00 -> 03
comp: False -> True
language: -> eng
albumtype: album/soundtrack -> soundtrack
artist_credit: -> Ice Cube & Paul Oakenfold
track_alt: 4
data_source: MusicBrainz
```
Shouldn't mbsync preserve all artists mentioned in the mb_artistid field instead of only the first one? The original tag data came from Picard and I think Picard is right here.

Contributor guide

Open the contributing guide

Research direction

Start by tracing mbsync's handling of the mb_artistid field and compare it with the multi-artist data shown from MusicBrainz and Picard. Confirm the relevant sync behavior and tests, then ensure all artist IDs in the field are preserved rather than only the first one.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.