Skip to main content

Manage music albums, automatically correct tags, organize and sync copies with interactive command line interface.

Project description

albums

GitHub Actions Workflow Status GitHub Actions Workflow Status Python PyPI - Version PyPI - Status Buy Me a Coffee

Manage a library of music: validate and fix tags and metadata, rename files, adjust and embed album art, clean up and import albums, and sync parts of the library to digital audio players or portable storage

Overview

albums works with media files and tags, but primarily acts on "albums" rather than individual files. Everything is done locally and an Internet connection is not required (although it can be configured to use an external tool to download cover art). It's a command-line app but it is designed to be user friendly, with interactive menus, rich text formatting, tables and even blocky graphics.

It can work with a single folder or scan a whole media library into its database to make subsequent operations fast. It has many automated checks and fixes for metadata related issues such as track numbering (sequence, totals, disc numbers), album-artist tags, embedding cover art, etc. It supports marking albums as part of "collections," for example to make a list of albums to sync to a digital audio player. It can also perform the sync.

Why use albums instead of other music library tools?

Use them all, you don't have to decide. If you have missing metadata or unidentified recordings and you want to use online databases to fill in the blanks, Beets does that, and has some command line and library management features similar to albums. MusicBrainz Picard does too. For manually editing tags in a GUI with some fancy features and automation, puddletag and MP3TAG (proprietary but no cost for Windows version) are nice, while EasyTAG is simple and quick.

albums is a little different. It works offline without external databases. It uses a series of independent, configurable checks and automated fixes for basic tags, cover art and filenames. You can review every change, or only the ones that require your choice. It also reports on some problems it can't fix, like missing tracks on an album. albums can help clean up and import new albums into your library and keep digital audio players synced. Its CLI plus JSON and SQL interfaces may enable some automation.

Supported Media

FLAC, Ogg Vorbis, MP3/ID3, M4A, ASF/WMA and AIFF containers/types are supported with standard tags. ASF/WMA embedded image support is read-only. Image files (PNG, JPEG, GIF, BMP, WEBP, TIFF, etc) in the album folder are scanned and can be automatically converted and embedded.

More formats and tag comprehension will likely be added if requested.

System Requirements

Installation via pipx requires Python 3.12+ and should work on almost any 64-bit x86 or ARM system with Linux, macOS or Windows.

Binary releases for 64-bit Linux or Windows do not have any Python requirement.

Albums is primarily tested on Linux and Windows.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

albums-0.9.26.tar.gz (112.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

albums-0.9.26-py3-none-any.whl (173.3 kB view details)

Uploaded Python 3

File details

Details for the file albums-0.9.26.tar.gz.

File metadata

  • Download URL: albums-0.9.26.tar.gz
  • Upload date:
  • Size: 112.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for albums-0.9.26.tar.gz
Algorithm Hash digest
SHA256 024e9ac735b476c610c5891fb108dccb1b82753c46c6b169c3b93f2f59da5572
MD5 fbdf48b6c88a7710f920df745200927e
BLAKE2b-256 4f1f82ae2890ec212157bb6362ab942e519ec8833c846ef35685679b9d051381

See more details on using hashes here.

Provenance

The following attestation bundles were made for albums-0.9.26.tar.gz:

Publisher: publish.yml on 4levity/albums

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file albums-0.9.26-py3-none-any.whl.

File metadata

  • Download URL: albums-0.9.26-py3-none-any.whl
  • Upload date:
  • Size: 173.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for albums-0.9.26-py3-none-any.whl
Algorithm Hash digest
SHA256 2004fee5dab3d09f4d84171a3915a20f94658b3cf8a7ca80708b3919e45af8d2
MD5 c1ed8055d582b765cd42ecbaadd8e3db
BLAKE2b-256 fd254529bc3e2a294aaa3f7f0ecc12764a0d9dc543b5ed094056d99580408f15

See more details on using hashes here.

Provenance

The following attestation bundles were made for albums-0.9.26-py3-none-any.whl:

Publisher: publish.yml on 4levity/albums

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page