Beets
From Indie IT Wiki
Beets is a cross platform media library management system.
HOWTO: INSTALL:
Linux
sudo apt install python-dev python-pip # if you do not already have installed sudo -H pip install beets requests Pillow
Display configuration file location...
beet config --paths
Edit configuration file...
beet config --edit directory: ~/Downloads/music/beets/done library: ~/Downloads/music/beets/musiclibrary.db plugins: zero fetchart embedart paths: default: $albumartist/[$year] $album/$track $title id3v23: yes art_filename: cover autotag: yes import: copy: yes write: yes zero: keep_fields: title artist album year track genre images embedart: maxwidth: 500
Make directory...
mkdir -p ~/Downloads/music/beets/done
HOWTO: UPGRADE:
Linux
sudo -H pip install --upgrade beets
HOWTO: USE:
Linux
beet import /path/to/music/album
If it has no problem with matching the correct album, you will just get a summary screen and then go back to the prompt.
Check your directory (shown in the configuration file above) for the processed album and move to your required location.
If it does have a problem matching the album, it will pause and show you options. Press the corresponding letter on your keyboard to continue.
Example Config File
Below is an example of a complex config file:
directory: /path/to/music library: /config/musiclibrary.blb art_filename: albumart threaded: yes original_date: no per_disc_numbering: no import: write: yes move: yes copy: no resume: ask incremental: yes quiet_fallback: skip autotag: yes timid: no log: /config/beet.log musicbrainz: host: xxx.xxx.xxx.xxx:xxxx ratelimit: 100 ########### DOCKER DEFUALTS ################# paths: default: $albumartist/$album%aunique{}/$track - $title singleton: Non-Album/$artist - $title comp: Compilations/$album%aunique{}/$track - $title albumtype_soundtrack: Soundtracks/$album/$track $title replace: '^\.': _ '[\x00-\x1f]': _ '[<>:"\?\*\|]': _ '[\xE8-\xEB]': e '[\xEC-\xEF]': i '[\xE2-\xE6]': a '[\xF2-\xF6]': o '[\xF8]': o '\.$': _ '\s+$': web: host: 0.0.0.0 port: 8337 ########### Additions ##################### # import folders are deleted if only files matching these patterns are left in folders clutter: ["Thumbs.DB", ".DS_Store", "*.m3u", ".pls", "*.jpg"] ########### PLUGINS ##################### # chroma and web installed with docker # plugins: fetchart lyrics lastgenre embedart ftintitle convert scrub replaygain missing chroma web duplicates missing fromfilename fetchart: auto: yes maxwidth: 300 cautious: true sources: amazon filesystem coverart albumart google wikipedia fanarttv_key: xxxxxxxxxxxxxxxxxxxxxxxxxxxx lyrics: fallback: force: yes lastgenre: auto: yes source: album canonical: yes canoncical: /config/genres-tree.yaml fallback: unknown whitelist: /config/genres.txt embedart: auto: yes maxwidth: 300 ftintitle: auto: yes convert: auto: no ffmpeg: /usr/bin/ffmpeg opts: -ab 320k -ac 2 -ar 48000 max_bitrate: 320 threads: 1 scrub: auto: yes replaygain: auto: yes overwrite: yes #duplicates: # move: /duplicates missing: format: $albumartist - $album - $track - $title count: no total: yes
Thanks to DZMM