diff --git a/beetsplug/acousticbrainz.py b/beetsplug/acousticbrainz.py index acc08488b..badb5728d 100644 --- a/beetsplug/acousticbrainz.py +++ b/beetsplug/acousticbrainz.py @@ -35,16 +35,17 @@ class AcousticPlugin(plugins.BeetsPlugin): help="fetch metadata from AcousticBrainz") def func(lib, opts, args): - fetch_info(self._log, lib) + items = lib.items(ui.decargs(args)) + fetch_info(self._log, items, ui.should_write()) cmd.func = func return [cmd] -def fetch_info(log, lib): +def fetch_info(log, items, write): """Currently outputs MBID and corresponding request status code """ - for item in lib.items(): + for item in items: if item.mb_trackid: log.info('getting data for: {}', item) @@ -79,7 +80,8 @@ def fetch_info(log, lib): ["highlevel", "mood_party", "all", "party"], ) - item.write() + if write: + item.try_write() item.store() diff --git a/docs/plugins/acousticbrainz.rst b/docs/plugins/acousticbrainz.rst index 71dc462d8..8e15716a5 100644 --- a/docs/plugins/acousticbrainz.rst +++ b/docs/plugins/acousticbrainz.rst @@ -9,7 +9,7 @@ The ``acoustricbrainz`` plugin gets acoustic-analysis information from the Enable the ``acousticbrainz`` plugin in your configuration (see :ref:`using-plugins`) and run it by typing:: - $ beet acousticbrainz + $ beet acousticbrainz [QUERY] For all tracks with a MusicBrainz recording ID, the plugin currently sets these fields: