beets
Beets is the media library management system for obsessive music geeks.
The purpose of beets is to get your music collection right once and for all. It catalogs your collection, automatically improving its metadata as it goes. It then provides a suite of tools for manipulating and accessing your music.
Here’s an example of beets’ brainy tag corrector doing its thing:
$ beet import ~/music/ladytron
Tagging:
Ladytron - Witching Hour
(Similarity: 98.4%)
* Last One Standing -> The Last One Standing
* Beauty -> Beauty*2
* White Light Generation -> Whitelightgenerator
* All the Way -> All the Way...
Because beets is designed as a library, it can do almost anything you can imagine for your music collection. Via plugins, beets becomes a panacea:
Fetch or calculate all the metadata you could possibly need: album art, lyrics, genres, tempos, ReplayGain levels, or acoustic fingerprints.
Get metadata from MusicBrainz, Discogs, and Beatport. Or guess metadata using songs’ filenames or their acoustic fingerprints.
Transcode audio to any format you like.
Check your library for duplicate tracks and albums or for albums that are missing tracks.
Clean up crufty tags left behind by other, less-awesome tools.
Embed and extract album art from files’ metadata.
Browse your music library graphically through a Web browser and play it in any browser that supports HTML5 Audio.
Analyze music files’ metadata from the command line.
Listen to your library with a music player that speaks the MPD protocol and works with a staggering variety of interfaces.
If beets doesn’t do what you want yet, writing your own plugin is shockingly simple if you know a little Python.
Install
You can install beets by typing pip install beets or directly from Github (see details here). Beets has also been packaged in the software repositories of several distributions. Check out the Getting Started guide for more information.
Contribute
Thank you for considering contributing to beets! Whether you’re a programmer or not, you should be able to find all the info you need at CONTRIBUTING.rst.
Read More
Learn more about beets at its Web site. Follow @b33ts on Mastodon for news and updates.
Contact
Encountered a bug you’d like to report? Check out our issue tracker!
If your issue hasn’t already been reported, please open a new ticket and we’ll be in touch with you shortly.
If you’d like to vote on a feature/bug, simply give a :+1: on issues you’d like to see prioritized over others.
Need help/support, would like to start a discussion, have an idea for a new feature, or would just like to introduce yourself to the team? Check out GitHub Discussions!
Metadata
Release files for beets 2.14.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| beets-2.14.1.tar.gz | 2.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| beets-2.14.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.1 MB
Release files / beets-2.14.1.tar.gz
| Download URL | beets-2.14.1.tar.gz |
|---|---|
| Size | 2.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b25dc7bf8ed093d8b6e043e88013736902c1082c958b81a598af5db5275539a5
|
|
BLAKE2b-256 checksum How to use checksums |
b05ead1f57f5de4846e7b274f2fa3b9df4dd7a641cb35bf047698a99b5179279
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.
Transparency logRelease files / beets-2.14.1-py3-none-any.whl
| Download URL | beets-2.14.1-py3-none-any.whl |
|---|---|
| Size | 650.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1a28161462f757ee34672585109597f3973105f24db8fb6ca91ff7e9e339cfc1
|
|
BLAKE2b-256 checksum How to use checksums |
ee546ff2c98cdbf3cf1c984ac63d90219c70c1e79263967270046b09aa27777a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.
Transparency log