Field overriding


#1

I’m looking for a way that allows me to change the value of a tag when importing it, by defining a function or something similar.
My use case is that I have a lot of compilations that can be categorized by an album artist, but as I am fetching the data from MusicBrainz, most of them have the album artist tag as ‘Various Artists’.
What I think it might be a good idea is having a function that test some conditions and if it finds them, it can rewrite any tag.
Is there a plugin that can do that or a workaround other than manually edit all the tags?


#2

This type of request pops up fairly often, and if I’m not mistaken the answer presently is that no, there is no way to do this. You can use the --set-fields option to set additional fields, but I don’t believe it’ll override data from musicbrainz.

It would be straightforward to do with a plugin though - someone just needs to sit down and write it. Adrian usually suggests reviewing the zero plugin as a good starting point. I think it be awesome to see someone right the plugin, and document it all in the beets docs, because it would have a nice subset of the plugin functionality - listening for events, extending an existing command (import), etc.