beetbox / beets

music library manager and MusicBrainz tagger
http://beets.io/
MIT License
12.73k stars 1.82k forks source link

Beets import ignores config in terms of meta sync: only uses MusicBrainz backend #2531

Closed exislow closed 4 years ago

exislow commented 7 years ago

I habe configured several meta sync backend in beets. Especially I need a backend that can provide the key and bpm information like beatport and / or audiobrainz. But everytime I try to import my music it seems, that musicbrainz is the only backend beets considers.

How can I tell beets to rely on more / other meta backends especially for key and bpm information?

$ beet import -s Tracks/a_track.mp3

something like this happens

Tracks/a_track.mp3
Correcting track tags from:
    a_track.mp3
To:
    a track
URL:
    https://musicbrainz.org/recording/<ID>
(Similarity: 99.4%) (artist)

Running this command in verbose (-vv) mode:

$ beet -vv
user configuration: /Users/xxx/.config/beets/config.yaml
data directory: /Users/xxx/.config/beets
plugin paths:
Sending event: pluginload
lyrics: Disabling google source: no API key configured.
inline: adding item field disc_and_track
inline: adding item field lossless_desc
library database: /Users/xxx/.config/beets/music.blb
library directory: /Volumes/mini/Music/Archiv_beets
Sending event: library_opened
Usage:
  beet COMMAND [ARGS...]
  beet help COMMAND

Options:
  --format-item=FORMAT_ITEM
                        print with custom format
  --format-album=FORMAT_ALBUM
                        print with custom format
  -l LIBRARY, --library=LIBRARY
                        library database file to use
  -d DIRECTORY, --directory=DIRECTORY
                        destination music directory
  -v, --verbose         log more details (use twice for even more)
  -c CONFIG, --config=CONFIG
                        path to configuration file
  -h, --help            show this help message and exit

Commands:
  acousticbrainz    fetch metadata from AcousticBrainz
  bad               check for corrupt or missing files
  clearart          remove images from file metadata
  config            show or edit the user configuration
  convert           convert to external location
  duplicates (dup)  List duplicate tracks or albums.
  edit              interactively edit metadata
  embedart          embed image files into file metadata
  extractart        extract an image from file metadata
  fetchart          download album art
  fields            show fields available for queries and format strings
  fingerprint       generate fingerprints for items without them
  help (?)          give detailed help on a specific sub-command
  import (imp, im)  import new music
  info              show file metadata
  keyfinder         detect and add initial key from audio
  lastgenre         fetch genres
  list (ls)         query the library
  lyrics            fetch song lyrics
  mbsync            update metadata from musicbrainz
  metasync          update metadata from music player libraries
  missing (miss)    List missing tracks.
  modify (mod)      change metadata fields
  move (mv)         move or copy items
  play              send music to a player as a playlist
  remove (rm)       remove matching items from the library
  replaygain        analyze for ReplayGain
  scrub             clean audio tags
  spotify           build a Spotify playlist
  stats             show statistics about the library or a query
  submit            submit Acoustid fingerprints
  update (upd, up)  update the library
  version           output version information
  web               start a Web interface
  write             write tag information to files
  zero              set fields to null
Sending event: cli_exit

Setup

My configuration (output of beet config) is:

lyrics:
    bing_lang_from: []
    auto: yes
    bing_client_secret: REDACTED
    google_API_key: REDACTED
    force: no
    google_engine_ID: REDACTED
    sources:
    - google
    - lyricwiki
    - lyrics.com
    - musixmatch
    fallback:
    genius_api_key: REDACTED
    bing_lang_to:
importadded:
    preserve_mtimes: yes
    preserve_write_mtimes: yes
asciify_paths: no
keyfinder:
    auto: yes
    bin: /Applications/KeyFinder.app/Contents/MacOS/KeyFinder
    overwrite: no
library: ~/.config/beets/music.blb

replace:
    '[\\/]': _
    ^\.: ''
    '[\x00-\x1f]': _
    \s+$: ''
    ^\s+: ''
    /: _
original_date: no
replaygain:
    auto: yes
    backend: gstreamer
    targetlevel: 89
    overwrite: no
copyartifacts:
    extensions: .cue .log .jpg
    print_ignored: yes

plugins: acousticbrainz spotify beatport fetchart fromfilename scrub discogs embedart zero inline convert mbsync chroma lastgenre lyrics the badfiles duplicates fuzzy info missing web edit keyfinder importadded metasync play copyartifacts replaygain
acousticbrainz:
    auto: yes
    force: no
ignore_hidden: yes

paths:
    default: Album/%the{$albumartist} - $album%aunique{} ($year)$lossless_desc/$disc_and_track. $artist - $title
    singleton: Non-Album/%the{$artist} - $title
    comp: Compilation/%the{$album%aunique{}}/$disc_and_track. %the{$artist} - $title
item_fields:
    disc_and_track: u'%01i-%02i' % (disc, track) if disctotal > 1 else u'%02i' % (track)
    lossless_desc: u' (Lossless)' if format == 'FLAC' or format == 'ALAC' else u''
art_filename: cover
fetchart:
    auto: yes
    minwidth: 0
    sources:
    - filesystem
    - coverart
    - itunes
    - amazon
    - albumart
    google_engine: 001442825323518660753:hrh5ch1gjzm
    enforce_ratio: no
    cautious: no
    maxwidth: 0
    store_source: yes
    cover_names:
    - cover
    - front
    - art
    - album
    - folder
    google_key: REDACTED
    fanarttv_key: REDACTED
chroma:
    auto: yes
lastgenre:
    auto: yes
    count: 1
    source: album
    prefer_specific: no
    force: yes
    min_weight: 10
    whitelist: yes
    separator: ', '
    fallback:
    canonical: no

import:
    copy: yes
    move: no
    write: yes
    resume: yes
    incremental: no
    autotag: yes
    log: ~/beetslog.txt

match:
    strong_rec_thresh: 0.1
    medium_rec_thresh: 0.25
    rec_gap_thresh: 0.25
    max_rec:
        missing_tracks: medium
        unmatched_tracks: medium
    ignored: missing_tracks unmatched_tracks
    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
    track_length_grace: 10
    track_length_max: 30
discogs:
    source_weight: 0.5
    tokenfile: discogs_token.json
    apikey: REDACTED
    apisecret: REDACTED
play:
    command: /Applications/VLC.app/Contents/MacOS/VLC
    use_folders: no
    raw: no
    warning_threshold: 100
    relative_to:
scrub:
    auto: yes
spotify:
    regex: []
    artist_field: albumartist
    mode: list
    track_field: title
    album_field: album
    region_filter: DE
    show_failures: no
    tiebreak: popularity
embedart:
    ifempty: no
    compare_threshold: 0.01
    auto: yes
    remove_art_file: no
    maxwidth: 0
metasync:
    source: itunes
    itunes:
        library: ~/Music/iTunes Library.xml
fuzzy:
    threshold: 0.7
    prefix: '~'
beatport:
    source_weight: 0.5
    tokenfile: beatport_token.json
    apikey: REDACTED
    apisecret: REDACTED
per_disc_numbering: yes
convert:
    auto: yes
    copy_album_art: yes
    embed: yes
    never_convert_lossy_files: yes
    max_bitrate: 320
    format: alac
    album_art_maxwidth: 0
    dest:
    threads: 4
    tmpdir:

    paths: {}
    pretend: no
    quiet: no
    formats:
        alac:
            command: ffmpeg -i $source -y -vn -acodec alac $dest
            extension: m4a
        aac:
            command: ffmpeg -i $source -y -vn -acodec libfaac -aq 100 $dest
            extension: m4a
        opus: ffmpeg -i $source -y -vn -acodec libopus -ab 96k $dest
        mp3: ffmpeg -i $source -y -vn -aq 2 $dest
        flac: ffmpeg -i $source -y -vn -acodec flac $dest
        ogg: ffmpeg -i $source -y -vn -acodec libvorbis -aq 3 $dest
        wma: ffmpeg -i $source -y -vn -acodec wmav2 -vn $dest
threaded: yes
zero:
    auto: yes
    fields: comments track tracktotal album albumartist albumartist_credit albumartist_sort comp composer encoder lyrics
    update_database: no
    keep_fields: []
ignore: .AppleDouble ._* *~ .DS_Store

ui:
    color: yes
    colors:
        text_success: green
        text_warning: yellow
        text_error: red
        text_highlight: red
        text_highlight_minor: lightgray
        action_default: turquoise
        action: blue
directory: /Volumes/mini/Music/Archiv_beets
pathfields: {}
album_fields: {}
edit:
    itemfields: track title artist album
    albumfields: album albumartist
    ignore_fields: id path
the:
    a: yes
    patterns: []
    the: yes
    strip: no
    format: '{0}, {1}'
duplicates:
    count: no
    full: no
    format: ''
    keys: []
    move: ''
    tag: ''
    path: no
    copy: ''
    tiebreak: {}
    album: no
    strict: no
    checksum: ''
    merge: no
    delete: no
missing:
    count: no
    total: no
web:
    host: 127.0.0.1
    port: 8337
    cors: ''
sampsyo commented 7 years ago

Hi! The metasync plugin doesn't work as an importer metadata source. You explicitly invoke it by typing beet metasync. Does that do what you expect?

stale[bot] commented 4 years ago

Is this still relevant? If so, what is blocking it? Is there anything you can do to help move it forward?

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.