beetbox / beetbox/beets

[mbsync] Track re-ordering on MusicBrainz only changes track metadata locally

Open
#5,072 0 comments 0 reactions 0 assignees View on GitHub
mbsync musicbrainz
Dominant language
Python
Stars
15.7k
Forks
2.1k
Avg merge
4d 21h
Merged PRs (30d)
31

Description

I re-ordered tracks 4-6 on musicbrainz, then ran mbsync on the release. Unfortunately, this only changed the metadata of the files so now the actual audio data of the tracks does not match the metadata.

I understand this problem non-trivial, but the there is the mb_trackid which could be used to help solve it.

In the meantime, I suppose any track-reordering will require a re-import of the album.

### Info

MusicBrainz release: https://musicbrainz.org/release/a5af5709-1f1a-4da3-ba4f-0a54ee13207c

### Output
```
Liam Gallagher - C′mon You Know - Too Good for Giving Up
title: Too Good for Giving Up -> C′mon You Know
albumtype: a -> album
albumtypes: ['a', 'l', 'b', 'u', 'm'] -> album
mb_trackid: d9a4ac61-f154-4d5e-a3d1-e4cc327f546e -> 18d8fbf5-38bb-48eb-9f37-d282e4a68f70
isrc: GBAHT2200007;GBAHT2200008 -> GBAHT2200007;GBAHT2200009
Liam Gallagher - C′mon You Know - It Was Not Meant to Be
title: It Was Not Meant to Be -> Too Good for Giving Up
albumtype: a -> album
albumtypes: ['a', 'l', 'b', 'u', 'm'] -> album
mb_trackid: 9301bb96-1975-4c14-a92b-1b495f1ae882 -> d9a4ac61-f154-4d5e-a3d1-e4cc327f546e
isrc: GBAHT2200008 -> GBAHT2200007;GBAHT2200008
Liam Gallagher - C′mon You Know - C′mon You Know
title: C′mon You Know -> It Was Not Meant to Be
albumtype: a -> album
albumtypes: ['a', 'l', 'b', 'u', 'm'] -> album
mb_trackid: 18d8fbf5-38bb-48eb-9f37-d282e4a68f70 -> 9301bb96-1975-4c14-a92b-1b495f1ae882
isrc: GBAHT2200007;GBAHT2200009 -> GBAHT2200008;GBAHT2200009
```

### Setup

* OS: docker, linuxserver/beets:latest
* beets version 1.6.0
* Python version 3.11.6
* plugins: chroma, convert, embedart, fetchart, lastgenre, lyrics, mbsync, missing, replaygain, scrub, unimported, web

Contributor guide

Open the contributing guide

Research direction

Start with the mbsync plugin and reproduce the reported behavior using the linked MusicBrainz release, focusing on how mb_trackid values are handled when tracks are reordered. The fix is complete when syncing preserves the association between each audio file and its corresponding reordered track instead of changing metadata only.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 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.