diff --git a/docs/changelog.rst b/docs/changelog.rst index f7ad1b07b..49ce4edfa 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -18,6 +18,10 @@ New configuration options: Other stuff: +* A new :doc:`/plugins/mbsync` provides a command that looks up each item and + track in MusicBrainz and updates your library to reflect it. This can help + you easily correct errors that have been fixed in the MB database. Thanks to + Jakob Schnitzer. * :doc:`/plugins/echonest_tempo`: API errors now issue a warning instead of exiting with an exception. We also avoid an error when track metadata contains newlines. diff --git a/docs/plugins/mbsync.rst b/docs/plugins/mbsync.rst index 4023618b0..764be9d86 100644 --- a/docs/plugins/mbsync.rst +++ b/docs/plugins/mbsync.rst @@ -1,26 +1,33 @@ MBSync Plugin ============= -The ``mbsync`` lets you fetch metadata from MusicBrainz for albums and -singletons that already have MusicBrainz IDs. This is useful for updating tags -as they are fixed in the MusicBrainz database, or when you change your mind -about some config options that change how tags are written to files. If you have -a music library that is already nicely tagged by a program that also uses -MusicBrainz like Picard, this can speed up the initial import if you just import -“as-is” and then use ``mbsync`` to get up-to-date tags that are written to the -files according to your beets configuration. +This plugin provides the ``mbsync`` command, which lets you fetch metadata +from MusicBrainz for albums and tracks that already have MusicBrainz IDs. This +is useful for updating tags as they are fixed in the MusicBrainz database, or +when you change your mind about some config options that change how tags are +written to files. If you have a music library that is already nicely tagged by +a program that also uses MusicBrainz like Picard, this can speed up the +initial import if you just import "as-is" and then use ``mbsync`` to get +up-to-date tags that are written to the files according to your beets +configuration. Usage ----- Enable the plugin and then run ``beet mbsync QUERY`` to fetch updated metadata -for a part of your collection. Since the MusicBrainZ API allows for more -efficient queries for full albums this will by run separately for all albums and -all singletons(tracks that are not part of an album) so it will use the given -query to search for both albums and singletons. +for a part of your collection (or omit the query to run over your whole +library). -To only preview the changes that would be made, use the ``-p`` (``--pretend``) -flag. By default all the new metadata will be written to the files and the files -will be moved according to their new metadata. This behaviour can be changed -with the ``-W`` (``--nowrite``) and ``-M`` (``--nomove``) command line options. +This plugin treats albums and singletons (non-album tracks) separately. It +first processes all matching singletons and then proceeds on to full albums. +The same query is used to search for both kinds of entities. + +The command has a few command-line options: + +* To preview the changes that would be made without applying them, use the + ``-p`` (``--pretend``) flag. +* By default all the new metadata will be written to the files and the files + will be moved according to their new metadata. This behavior can be changed + with the ``-W`` (``--nowrite``) and ``-M`` (``--nomove``) command line + options. diff --git a/docs/reference/cli.rst b/docs/reference/cli.rst index 2add6aaba..575c92968 100644 --- a/docs/reference/cli.rst +++ b/docs/reference/cli.rst @@ -105,10 +105,9 @@ right now; this is something we need to work on. Read the ^^^^^^^^^^^ The ``import`` command can also be used to "reimport" music that you've - already added to your library. This is useful for updating tags as they are - fixed in the MusicBrainz database, for when you change your mind about some - selections you made during the initial import, or if you prefer to import - everything "as-is" and then correct tags later. + already added to your library. This is useful when you change your mind + about some selections you made during the initial import, or if you prefer + to import everything "as-is" and then correct tags later. Just point the ``beet import`` command at a directory of files that are already catalogged in your library. Beets will automatically detect this @@ -127,6 +126,11 @@ right now; this is something we need to work on. Read the or full albums. If you want to retag your whole library, just supply a null query, which matches everything: ``beet import -L`` + Note that, if you just want to update your files' tags according to + changes in the MusicBrainz database, the :doc:`/plugins/mbsync` is a + better choice. Reimporting uses the full matching machinery to guess + metadata matches; ``mbsync`` just relies on MusicBrainz IDs. + .. _list-cmd: list