Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
Optionally disable the MusicBrainz data source #400
I'd like to perform an series of imports using beets but instead of using the musicbrainz autotagger I'd like to write my own matcher as a plugin.
@sampsyo has suggested another config option to handle this, but it might be a little messy to implement, so I'm asking for some feedback.
The other problem I can see is that there is a significant reliance on musicbrainz track ids, e.g. https://github.com/sampsyo/beets/blob/master/beets/autotag/match.py#L450. Any chance of working around these without a large rewrite?
Yes, I think the first place you mentioned (in hooks.py) is ideal. In short, since beets now supports pluggable metadata sources, the MusicBrainz source is very much like a plugin that can't be disabled. And the hooks.py functions are the place where the MB source is aggregated with the plugin source. (Of course, a longer-term way to solve this would be to turn MB into a real plugin that's enabled by default but can be disabled.)
And the other issue you pointed out is a good one—that deduplication step will behave incorrectly for matches without MBIDs. Maybe a separate ticket is in order?