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. 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.7.tar.gz (87.2 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.7-py3-none-any.whl (133.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for albums-0.9.7.tar.gz
Algorithm Hash digest
SHA256 6052517d7e266762a273717cf7810fb02c95e358fe1c55c93d20694383985afc
MD5 d1fd0d3c218ba16472fafbd06d86f4ed
BLAKE2b-256 8e71e634e6d17848a4b035dbd49ef1ac029910a7368ef376186f405fb96f6554

See more details on using hashes here.

Provenance

The following attestation bundles were made for albums-0.9.7.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.7-py3-none-any.whl.

File metadata

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

File hashes

Hashes for albums-0.9.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d5ae86d6c7892ccc4580d10c5dd490dfbbee714120a9e3cdcb5030ccbb07ee54
MD5 21583724b95e36c9fa823943d2d9c114
BLAKE2b-256 e36e1d0a16e1dcce912ff0a268a552e915d3355b5d8d8af8bf7e14133dca97f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for albums-0.9.7-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