Skip to content

beets 1.3.2

Compare
Choose a tag to compare
@sampsyo sampsyo released this 23 Dec 00:26
· 9568 commits to master since this release

This update brings new plugins for fetching acoustic metrics and listening statistics, many more options for the duplicate detection plugin, and flexible options for fetching multiple genres.

The "core" of beets gained a new built-in command: beet write updates the metadata tags for files, bringing them back into sync with your database. Thanks to Heinz Wiesinger.

We added some plugins and overhauled some existing ones:

  • The new echonest plugin can fetch a wide range of acoustic attributes from The Echo Nest, including the "speechiness" and "liveness" of each track. The new plugin supersedes an older version (echonest_tempo) that only fetched the BPM field. Thanks to Pedro Silva and Peter Schnebel.
  • The duplicates plugin got a number of new features, thanks to Pedro Silva:
    • The keys option lets you specify the fields used detect duplicates.
    • You can now use checksumming (via an external command) to find duplicates instead of metadata via the checksum option.
    • The plugin can perform actions on the duplicates it find. The new copy, move, delete, delete_file, and tag options perform those actions.
  • The new mpdstats plugin collects statistics about your listening habits from MPD. Thanks to Peter Schnebel and Johann Klähn.
  • lastgenre: The new multiple option has been replaced with the count option, which lets you limit the number of genres added to your music. (No more thousand-character genre fields!) Also, the min_weight field filters out nonsense tags to make your genres more relevant. Thanks to Peter Schnebel and rashley60.
  • lyrics: A new --force option optionally re-downloads lyrics even when files already have them. Thanks to Bitdemon.

As usual, there are also innumerable little fixes and improvements:

  • When writing ID3 tags for ReplayGain normalization, tags are written with both upper-case and lower-case TXXX frame descriptions. Previous versions of beets used only the upper-case style, which seems to be more standard, but some players (namely, Quod Libet and foobar2000) seem to only use lower-case names.
  • missing: Avoid a possible error when an album's tracktotal field is missing.
  • ftintitle: Fix an error when the sort artist is missing.
  • echonest_tempo: The plugin should now match songs more reliably (i.e., fewer "no tempo found" messages). Thanks to Peter Schnebel.
  • convert: Fix an "Item has no library" error when using the auto config option.
  • convert: Fix an issue where files of the wrong format would have their transcoding skipped (and files with the right format would be needlessly transcoded). Thanks to Jakob Schnitzer.
  • Fix an issue that caused the id3v23 option to work only occasionally.
  • Also fix using id3v23 in conjunction with the scrub and embedart plugins. Thanks to Chris Cogburn.
  • ihate: Fix an error when importing singletons. Thanks to Mathijs de Bruin.
  • The clutter option can now be a whitespace-separated list in addition to a YAML list.
  • Values for the replace option can now be empty (i.e., null is equivalent to the empty string).
  • lastgenre: Fix a conflict between canonicalization and multiple genres.
  • When a match has a year but not a month or day, the autotagger now "zeros out" the month and day fields after applying the year.
  • For plugin developers: added an optparse callback utility function for performing actions based on arguments. Thanks to Pedro Silva.
  • scrub: Fix scrubbing of MPEG-4 files. Thanks to Yevgeny Bezman.