the classical music manager you never knew you needed, until now...
clamm
is a python command line program for managing (and growing) a library of classical music.
- efficiently maps the tags of classical music audio files to sane structures.
- provides tools for working with raw audio streams of (you guessed it!) classical music
- generate playlists using iTunes-like combination logic.
Most (if not all) of the software listed below can be installed using common package managers like brew, apt, pacman, yum, ...
clamm
functionality is broken into two main categories, Managing and Adding.
The dependencies for organizing and building a library are
- ffmpeg for audio stream conversion and other low-level audio utilities
- flac for
metaflac
which enables tagging FLAC files
The dependencies for adding to a library require macOS first of all. Also,
- shairport-sync for capturing raw PCM data from iTunes
- osascript for controlling iTunes
There are already several good music library tools on the market. The best I am aware of is probably is beets. beets
has great support for interfacing with the open-source tag database musicbrainz as well a host of library management functionality and a rich plugin ecosphere. Indeed, clamm
aspires to be like beets
when it grows up.
I tried beets and still have a use for it, but it didn't have the support for classical music tags I wanted. In fairness, beets relies heavily on musicbrainz, and musicbrainz reflects all other audio file tag schemas in skewing toward popular music.