Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fetch remixer field from MusicBrainz #4428

Closed
TypicalFence opened this issue Jul 28, 2022 · 7 comments · Fixed by #4549
Closed

Fetch remixer field from MusicBrainz #4428

TypicalFence opened this issue Jul 28, 2022 · 7 comments · Fixed by #4549
Labels
feature features we would like to implement

Comments

@TypicalFence
Copy link
Contributor

Problem

Musicbrainz seems to have a field called remixer for remixes, this info isn't written to my files.

Example: https://musicbrainz.org/release/7c7f7ddf-c021-4ee8-993d-d1c330b4a36a

Using it for the artist field, similarly to the artist_credit option would also be nice.

According to the Picard docs there would even be a proper place to store it in ID3.

Setup

  • OS: Arch Linux
  • Python version: 3.10
  • beets version: 1.6.0
  • Turning off plugins made problem go away (yes/no): no
@sampsyo sampsyo added the feature features we would like to implement label Jul 30, 2022
@sampsyo sampsyo changed the title remixer field Fetch remixer field from MusicBrainz Jul 30, 2022
@sampsyo
Copy link
Member

sampsyo commented Jul 30, 2022

Sounds like a reasonable thing to add! Hopefully it shouldn't be too hard (the place to do it is in beets/autotag/mb.py).

@Bootjewolf
Copy link
Contributor

I am currently working on this. It is my first time contributing to beets so I might take some time to get familiar with the codebase and structure.

@sampsyo
Copy link
Member

sampsyo commented Nov 2, 2022

Awesome! Let us know with a Discussion post if you have any code-level questions we can answer.

@Bootjewolf
Copy link
Contributor

So after looking at the example given by @TypicalFence I can see the remixer field on the musicbrainz website. However, looking at the JSON or XML that is available from the muiscbrainz website I can't find the remixer mentioned anywhere except for the title. I don't know how to proceed since to me it seems like this information isn't available through the api queries beets makes at the moment. Is this the case or am i missing something?

@TypicalFence
Copy link
Contributor Author

@Bootjewolf I just went over the musicbrainz api docs.

The remixer tag is a artist relation.
When we include artist-rels in a request of a recording from the album we get the following: JSON, which includes a relation of the type remixer. 🎉

Now for that to work for the requests that you posted we need to include recording-level-rels, which just tells musicbrainz to resolve the rels on a recording (track/song) level.

This leaves us with the following url: https://musicbrainz.org/ws/2/release/7c7f7ddf-c021-4ee8-993d-d1c330b4a36a?inc=aliases%2Bartist-credits%2Blabels%2Bdiscids%2Brecordings%2Bartist-rels%2Brecording-level-rels&fmt=json

You can find this in the api docs here.

The api is rather complicated tbh.

@Bootjewolf
Copy link
Contributor

Thank you! I will have another look at it this coming week.

@Bootjewolf Bootjewolf mentioned this issue Nov 15, 2022
3 tasks
@Bootjewolf
Copy link
Contributor

According to my tests I have successfully implemented it in PR #4549.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature features we would like to implement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants