Skip to content
sampsyo edited this page Jan 10, 2013 · 3 revisions

Data Source Plugin API

This page is regarding the addition of necessary APIs to add new metadata source backends (i.e., other than MusicBrainz) via beets plugins.

One user, @imenem, seems to have already started a couple of plugins for Discogs and iTunes matching using an ad-hoc API.

The main task is to forward the calls to _album_candidates and _item_candidates in beets.autotag.hooks to plugins. (Source here.) Currently, the plugin methods candidates and item_candidates play this role partially but don't cover all the parameters of the two "hooks" functions. (This is because the APIs were added to support acoustic fingerprinting, which doesn't need these extra parameters.)

I propose to replace these old plugin methods with album_candidates and item_candidates, methods taking the same set of parameters as those functions in beets.autotag.hooks. What else do we need to add?

Clone this wiki locally