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

Uploaded Python 3

File details

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

File metadata

  • Download URL: albums-0.9.25.tar.gz
  • Upload date:
  • Size: 112.3 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.25.tar.gz
Algorithm Hash digest
SHA256 d53d46110b6ebe0a3b4d048700dda0fe49372a7cff8f5ad3697f9ed2cc2b4470
MD5 10088f394de05fa06f47da2dd504bec2
BLAKE2b-256 782d8b334b031bf753a326cec49ba38459e0dbd21867ddb37efa27ea588674ef

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: albums-0.9.25-py3-none-any.whl
  • Upload date:
  • Size: 173.0 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.25-py3-none-any.whl
Algorithm Hash digest
SHA256 2a1dd1b4cfa0193a80b5bf5649b5e60447a4cdf118deb549c5ca86d61771f7a8
MD5 a786dbf1fa8cd79b0d0201543164a77b
BLAKE2b-256 5f13336d06d8b96d421e7c8ca342adb4a90d73e74328bea3333849ea627116c9

See more details on using hashes here.

Provenance

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