160 lines
4.9 KiB
Markdown
160 lines
4.9 KiB
Markdown
# beets config
|
|
|
|
> The purpose of beets is to get your music collection right once and for all. It catalogs your collection, automatically improving its metadata as it goes using the [MusicBrainz](http://musicbrainz.org/) database. Then it provides a bouquet of tools for manipulating and accessing your music.
|
|
|
|
Stored at `$HOME/.config/beets/config.yaml`
|
|
|
|
```yaml
|
|
directory: /mnt/chawley/Music
|
|
library: /home/chawley/musiclibrary.blb
|
|
|
|
import:
|
|
# write metadata to music files
|
|
write: yes
|
|
|
|
# move imported files from source to the music directory
|
|
move: yes
|
|
copy: no
|
|
delete: no
|
|
|
|
# use auto-tagging where possible
|
|
# do not require confirmation on strong matches
|
|
autotag: yes
|
|
timid: no
|
|
|
|
resume: ask
|
|
incremental: no
|
|
none_rec_action: ask
|
|
log:
|
|
|
|
quiet: no # enable with command line option
|
|
quiet_fallback: skip
|
|
default_action: apply
|
|
|
|
singletons: no
|
|
languages: #howto
|
|
detail: no
|
|
flat: no
|
|
|
|
# use the release-date of the original (first) release of an album?
|
|
original_date: yes
|
|
|
|
# on multi-disk releases, assign track numbers for the whole album.
|
|
# If "per disk", make sure tracknames do not collide ("paths" setting).
|
|
per_disc_numbering: no
|
|
|
|
# files matching these patterns are deleted from source after import
|
|
clutter: ["Thumbs.DB", ".DS_Store", "*.m3u", ".pls", "*.jpg"]
|
|
|
|
# files/directories matching one of these patterns are ignored during import
|
|
ignore: [".*", "*~", "System Volume Information"]
|
|
|
|
# Paths ----------------------------------------------------------------------
|
|
|
|
# Paths and filenames for music files
|
|
# relative to music directory
|
|
paths:
|
|
default: $albumartist - $year - $album/$albumartist - $track - $title
|
|
singleton: Non-Album/$artist - $title
|
|
comp: $album ($year)/$track - $artist - $title
|
|
|
|
# replace special characters in generated filenames
|
|
replace:
|
|
'[\\/]': _
|
|
'^\.': _
|
|
'[\x00-\x1f]': _
|
|
'[<>:"\?\*\|]': _
|
|
'\.$': _
|
|
'\s+$': ''
|
|
|
|
path_sep_replace: _
|
|
|
|
# filename for the album art
|
|
art_filename: cover # results in "cover.jpg"
|
|
|
|
max_filename_length: 0 # unlimited
|
|
|
|
|
|
# General --------------------------------------------------------------------
|
|
|
|
# use mutliple threads during import
|
|
threaded: yes
|
|
timeout: 5.0
|
|
verbose: no
|
|
|
|
|
|
# User Interface -------------------------------------------------------------
|
|
|
|
color: yes
|
|
list_format_item: %upper{$artist} - $album - $track. $title
|
|
list_format_album: %upper{$albumartist} - $album
|
|
time_format: '%Y-%m-%d %H:%M:%S'
|
|
terminal_encoding: utf8
|
|
|
|
ui:
|
|
terminal_width: 80
|
|
length_diff_thresh: 10.0
|
|
|
|
|
|
# Auto Tagger ----------------------------------------------------------------
|
|
|
|
match:
|
|
strong_rec_thresh: 0.1 # match 90% or better for auto import
|
|
medium_rec_thresh: 0.25
|
|
rec_gap_thresh: 0.25
|
|
max_rec:
|
|
missing_tracks: medium
|
|
unmatched_tracks: medium
|
|
distance_weights:
|
|
source: 2.0
|
|
artist: 3.0
|
|
album: 3.0
|
|
media: 1.0
|
|
mediums: 1.0
|
|
year: 1.0
|
|
country: 0.5
|
|
label: 0.5
|
|
catalognum: 0.5
|
|
albumdisambig: 0.5
|
|
album_id: 5.0
|
|
tracks: 2.0
|
|
missing_tracks: 0.9
|
|
unmatched_tracks: 0.6
|
|
track_title: 3.0
|
|
track_artist: 2.0
|
|
track_index: 1.0
|
|
track_length: 2.0
|
|
track_id: 5.0
|
|
preferred:
|
|
countries: []
|
|
media: []
|
|
original_year: no
|
|
ignored: []
|
|
track_length_grace: 10
|
|
track_length_max: 30
|
|
```
|
|
|
|
## Reference
|
|
|
|
* [Beets is the media library management system for obsessive-compulsive music geeks.](https://beets.io)
|
|
* [My Beets Config - Github Gist](https://gist.github.com/crh0831/c550392ef75a5637c82d2e708fc74b8c)
|
|
|
|
## Beets Notes
|
|
|
|
**2017-01-03** - I got sidetracked and started re-tagging all my music in Plex using beets after reading glowing reviews in a couple posts on reddit.
|
|
|
|
Its pretty nice. I decided to move everything that was beets imported to a new directory and point Plex at that directory as my new library.
|
|
|
|
I guess beets does A LOT of stuff, most of which I haven't even begun to understand. Accordingly I've had 3 beets tabs open in Chrome for the last few days. I thought this might be a good place to collect what I know so far so I can close those tabs.
|
|
|
|
This way I can come back to this if I want to pursue it further.
|
|
|
|
* [Getting Started](http://beets.readthedocs.io/en/v1.4.2/guides/main.html)
|
|
* [Path Formats - Template Functions](http://beets.readthedocs.io/en/v1.4.2/reference/pathformat.html)
|
|
* [Somebody's beets config sample](http://akeil.net/listings/beets.config.yaml.html)
|
|
|
|
**2017-05-25** - Beets has served me well. So well, that I am taking the tagged music repository out of Plex and moving it to shawshank and will use Cherry Music as a front-end.
|
|
|
|
* Beets config is located at `$HOME/.config/beets/config.yaml`
|
|
* Import directory of music with: `beet import <directory-name>`
|
|
* Delete album with: `beet rm -a "Jon Oliva" -d` (`-a` for album and `-d` to delete the files and not just the database entry) |