SACAD is a multi platform command line tool to download album covers without manual intervention, ideal for integration in scripts, audio players, etc.
Since version 1.6, SACAD also provides a new command line tool,
sacad_r, to scan a music library, read metadata from audio tags, and download missing covers automatically, optionally embedding the image into audio audio files (since version 1.9).
Since version 2.0, SACAD has been rewritten to use the asyncio framework, which typically results in ~40% faster processing for
sacad and 600-700% faster (yes, 6-7x faster!) for
SACAD is designed to be robust and be executed in batch of thousands of queries:
SACAD requires Python >= 3.6.
Windows users can download a standalone binary which does not require Python.
Arch Linux users can install the sacad AUR package.
pip3 install sacad
git clone https://github.com/desbma/sacad
python3 setup.py install
Additionnaly, if you want to benefit from image crunching (lossless recompression to save additional space):
On Ubuntu and other Debian derivatives, you can install both with
sudo apt-get install optipng jpegoptim.
Note that depending of the speed of your CPU, crunching may significantly slow down processing as it is very CPU intensive (especially for PNG files).
Two tools are provided:
sacad to search and download one cover, and
sacad_r to scan a music library and download all missing covers.
sacad -h /
sacad_r -h to get full command line reference.
To download the cover of Master of Puppets from Metallica, to the file
AlbumArt.jpg, targetting ~ 600x600 pixel resolution:
sacad "metallica" "master of puppets" 600 AlbumArt.jpg.
To download covers for your library with the same parameters as previous example:
sacad_r library_directory 600 AlbumArt.jpg.
Adding a new cover source is very easy if you are a Python developer, you need to inherit the
CoverSource class and implement the following methods:
getSearchUrl(self, album, artist)
See comments in the code for more information.