Made a plugin for MusicBrainz Picard to submit tags to MusicBrainz
Made a plugin for MusicBrainz Picard to submit tags to MusicBrainz
For context, MusicBrainz is basically a giant encyclopedia of music similar to sites like Discogs and Rate Your Music, but it's aimed more at documenting them in a way that computers can understand and work with. It's essentially like Wikidata but specifically for music. Its official cross-platform tagger is Picard, which comes with support for user-made plugins.
A feature that MusicBrainz has, similar to last.fm, is that entities can be tagged. Typically this is for genres and things that are common, in fact they maintain their own genre list that takes into account relationships between genres, their origins, any subgenres, etc. in a way that computers can work with, mainly based on (but not limited to) data from Wikipedia, Discogs and RYM. If you tag an entity a genre, it's given its own genres pane above the regular tags.
I wanted to make submitting this data to MusicBrainz easier. I extensively tag genres in my music library, based on tags from RYM whose genre database, though flawed, is very extensive and detailed. The best way for me to do this was via a plugin.
I built it in late 2022, then submitted it to the plugin repository where it was accepted in May/June this year. It's not much but it's so bloody cool to boot up Picard and see my code being available for everyone, especially on a fresh OS install. You can access it from the link or from Picard itself; in the Plugins settings page.
There were some challenges, one of the users is an admin who wanted to tag artists using it, while I tend to tag recordings almost exclusively, so I had to account for that while checking for weird issues that'd happen like multiple recording tags being assigned to an artist which should only have a few. There's also some refactoring that needs to be done to make the code much less complex to work with, and I am slowly working on that as well. But all in all I was very happy with how it worked and am happy it was good enough for the team over at MusicBrainz to add.