MusicBrainz Helper: A beets Plugin to Generate Helpful Reports

Introduction:

So Acoustid is a great help in working with recordings, but recordings can be polluted with a bunch of acoustids that you’re not sure the accuracy of. So, I thought, why not create a tool that uses only my acoustids for comparisons.

This plugin generates an HTML report of your beets library that highlights different recordings with shared acoustids or recordings with multiple acoustids in your library.

Prerequisites:

  • Your library must be accurately linked to MusicBrainz releases. If your recordings are not linked to the correct releases, then this plugin will not generate accurate data and should not be used.
  • Your beets installation must have the Chromaprint/Acoustid plugin installed and you must use the plugin to fingerprint and submit your files to Acoustid before using this plugin.
  • Installing and running the mbsync plugin is highly recommended to make sure you are generating a report from the most recent MusicBrainz data.

Installation

Download mbhelperplugin.py and install it in your beets configuration.

For instructions on installing a 3rd party beets plugin, please reference the section entitled Other Plugins in the beets documentation for plugins.

Instructions

Run the command beets mbhelper to generate an html file containing the MusicBrainz Helper report. -d DIRECTORY or --directory DIRECTORY can be used as arguments if you would like to specify a directory path for the file to be placed in.

The HTML report contains two pages, you can switch between these pages using the menu in the top right.

Recordings with Shared Acoustids

This page lists tracks in your library that are linked to different MusicBrainz recordings but share the same acoustid. This may indicate that the recordings should be merged.

Shared acoustids are a good sign that recordings may need to be merged, but should not be the only thing you rely on. Acoustids group similar fingerprints and may sometimes group recordings that should remain separate in MusicBrainz (Examples are clean vs explicit recordings, DJ mixes, or differences in intros or outros).

Example Screenshot:

Recordings With Multiple Acoustids

This page lists tracks in your library that share MusicBrainz recordings but do not have matching acoustids. This may indicate a mistaken recording merge in the past that needs to be split.

This list has a very high false positive rate. Differences in the speed of a recording, added noise (such as from a vinyl rip), or other small differences between releases can cause the same recording to have multiple acoustids. Please review the acoustids individually on acoustid.org (the fingerprint comparison tool is good for this purpose) and use common sense before splitting a recording.

Example Screenshot:

Conclusion

Idk know how many beets users we have here, but if you exist, please let me know your thoughts. Feel free to report any bugs you encounter in this thread or on Github. If you have any suggestions or other reports you think would be a useful addition to this plugin, please let me know.

2 Likes