beetbox / beets

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

Beets not updating certain tracks with `albumartists` (and other multi-tag fields) #5059

Open jmbannon opened 8 months ago

jmbannon commented 8 months ago

Problem

Hello again 👋

I'm on latest master, and recently imported this album. However, I noticed there aren't any multi-tags like albumartists on it. When I try to explicitly update them, it does not seem to do anything.

beet info artist:Plini album:Mirage track:1

/tagged/Plini/[2023] Mirage/01 - The Red Fox.mp3
acoustid_fingerprint: AQADtFESKUmUKUmSCE30HOfRxIIeMcfWEQ9hXsdPwJJz_ISOG9WPqjDRQ1eIVkL-wppxwR964rkQ3lgNk4GOu8NjEscWoedT9IEWa2HwoXyaESJx_dheD30Ibc_g6yjfI_xhZsd2HPmS4_B36Jfww9N4_MePn_hItDs0N4ezoT_6wzoevDj8Q7_x4xpMTkeOkxf-wnuIR0f6i8MD7UWeMXiPyg_CaNCV40e-3fhwbchR34KWMUOu_LjRSx9sHfXRnBp6BT8wZeRBdcQV4UgvQU3YEjFPmJKKHQd8Hklujkj9ob4s_GiSB8wn5JF66MnmBmEy5ph29FkupIce8XgyIa2N6UyMH01X8AsaT8eOH8_yDNUJi5mKPsdJHeGPLc4LceGDUtKJ7IRVBqMq44n0Es2JO8ePP-ja4x0q8UQu4dBeBzl1XF2M5kQV7kGfrUGDJ9ORFxqPbdnRLwePJ_2gPJGO2HrwB32yo_-Q6wr6PISWDvma4T9u9HuxD7UJ_qi-CGNa_HiE9BXqTMeTHf-LfgkJLQf-FnrOIMzxR-iq4znmgNMvYx-JvkcYK9BbEuHh58F--Dw4lSs2TTzep3BFHn1xfLiy4xMeHb8enOnQC0354QpxKkt4PD1848uOnT9OMPnRH3tW_Boqwi5ywQuh6Sh8Mzhzw0vUo8uD-3iOKVWUbigjTBSmPMNL4acgJlP04Bci5yiXw8dxB-9yIm74QxxzBk94wXF2_MI7uNvx7MG8wB-0j7j4HBeaHKXxD8xx_Dh8HHvQF7H64xdK2fAzoj8uV2j9w9aHPsZpkTgaTUdP4jo-9JvQvLgQnsc_iB_SyTjwCH234Thv9MOVDsWH6ti6E66I4-aF1O7RE_iJY1oJ8Qt-eF2Oa8Zx5MO_o_xRHc7x7Xhp3Dh59B6-DiHJQwwv5Llx5vh-_DCx56CYTEQ9HtM1OCI3WBbKHreMH-VzONQj2Jok4xccCWEj_NgFtZ_AHI1mFkfPw0d7o_QqyB72DUdzfA9UkUfMJvBxLejhSEKf6Kj54Uj4XELJ49h__IEWMPtRPTh0gzpy7IuIxsd15PrRPKjOBfJkNNvRRtfQi4cYPUN15bhw_dgPnUczHlcO9sMl9OCgHds0XMzRdMuhfzhiJ0IjPUetHBfq_biPB9t1fGDyF_vxZFGEkvyQ_Mjh_-h7_MEZTmjzw5XQhcE1xI106OWQP0RY9YHHE_2hf3imIeTRcA9i7eihXCQpWM0Qo0-OHp50_MhcwWMJ7Rl2Br9wQR8axgmNUMmP--iLptKRM46gS4rQoxmeM_ixH2LSHNdB9xGaHz1aSKo0Cj3-4MWe4xeqzDm05Bue40efFvqWCG2Osjum4xH4Qz-2HMehhUuwXsiU49jLoqZy_DhPxD7khkc6HSfe4GJ2TBQ3CUw4JdjRpR-aD09wp_Ae5Az0BWcQXjJM6uiP_oK58MghXkNutMfNA8eP_oheDskOPvjwLMd-_MSPZIpUIz0cqvg_7IeP-jiqgRV-JEfQfDPYo1p0OOGHyeKG_NByhA9DXGiYoB-qD_7RbSlOPF8QnhCz9dg15EcvSjj6E-xU9MxxJdIlrA1q-DleDheNMzws_QhJ1khKBTeu4dNxlDbh7Eep1PjQHwlvIT3KRDnxLGZxHdWZGkZ-6EhTH118HM9G4iLxXAj1wCoPTc-OHU9qEaGPP8fJHM6PThFFZKHSDOI9Iv2KKs4D_Ch5FV5yCc0nCu_R5EcSbRbyNKzwXDmmrIeTH7USBc_xFz2zI4yuQ9fxo6lonOLhHl9-5D-OK0txKZODB-Xx9biYB93RhCmHO8WN-7hk4imLpPGETPnxccFJgT3uRPCUDrw0xGM4qPmRPrGE56hzNN_Bkzp6hDmk40sSDvl0fL4C1g-aI7RznAnko1J4NLvwNILOo5mELUv2DN0F1VGC88h7OMzxOR6O6vix6cfTp7iO7HvwYBWPMCGeD2d0-JmOR6LgC7-HRzeSLmkupGNm_Ngv42AyTTraZDzyEpUYK4JHHuGLJ0yOu8CUJ0X_FY_C4znySkh2JUVD5scf4XjCwx1xdH5whKYMeeFxJ0cYHj32Dz_SHrqSI2eIXTomTzALFq6D8IoORfYRJomVGFcIP5Tx4zlCl9AyEvmyBMekLIdDHc_B5MfHC0ieEFeO-ME-NE-OUByhJ0ODSE8XfGKSIvzhB-KUZERIiUd1NNyDT0xXfAtOSUfPoLmMP52xKzCTIzquB2q4hEcuWjKaY98P_0G7LMddIszRK8aPcKJyNI6UHdePJkflDK9moUlr1FpwIg-aFz1O5biSdDr2B3lyojlqLTnqDI2aBzcOJu_RH6EVJYfMIDf-ws8PP_lQp8SzBc17oTzii4NeJQ7CSIlQSwd__MgPXcwRNkn2wk-P4o6CbA-0H_l4MD6-x_jooCQNH21EXAtOJGtz5MePK1uC9wlcU8j2HCKLvAIlKkd9fKOD__iRpYsE6SRyCb1QSTr-wNfhMAxyKihbEf_xC3Mjw9qW4skOncK_IzcqMXvwhHERLzSO5syJN4oR_egPH7zQUDbO5Qg_AOGEEkICBABBSCFkDANMCuWIQ8CYIBAJhAmhJGIEIEeUGIIJaBwFQBBgAAAOEQKEMqIhYRBDmAEQjAGCCSKoFIQYgwARwhAFCBJaAMgZYcYgGIGAQghjACCEAAKtIFQAIBgwCBFAiBECCCuAEYwIBAwSDgFlCCoWAECEIgYiQhgAAAIigBDGECGEAYoIQAhxlDjlCCECEIAAARwIw4AAAhDiATEGCAGMENAgAIQAAjBiDCAAIUQIEAgBIQwTAhDACAOKCsCAIcx4pBgQQABAgGGECaIEAUQYK4EgQhpKHCDCOGEEAYQo4C0ziBHAiDBIWAEMMkQoEkAAQhhGBDDCSOqMMIJAYwWBhijkAHACISIAYsIJAwwUAglAhCaUCGCARVQBAYQEQlgAEAgCAAEEZVCJ4YhTgiCjhCACQIYMcUAaIwBhFhtikGAAGCMMEVYQUAgihDioiBCACEmIkEIJAYzASlCBlBXCIAOJsMwwIAAwUCBCCHEEIgA4MEIRKkhBxCDDEIIEACFBMZJ44hpBBDlBlDCMA0AQ0iAJIJgQQikCFAAYMFagENIKyoBxEBCAAQAAmqAwkEAoQoQWCCGgjBJOECEFFUA4YJBSiAigFEMADIcEQhoJhIBwxBnpgDFSAGEMI0ARB4yhBCmDBDPGGQYEIQI5QIQhCgnjBAIOAEKEQAAaAwCCiBiGkEAMgkQJMIY7QIywggCgABAAASIdRUJARohgAgiHjEAAOQOoQooYRJwEQAjBkBIuKAksYogSYghigADBkEcETDMAYAoRKpiAyjjgAAAQIEmkRk4IaAhBQmpgiGAGIYeMIEAIRIRlCAgiAEAAEIUAABIQAxgVjgEFqACAKYQAoQ4Aw4QByAAAhBHACUApEVQCIgAighhACCAGiYWUssAIgIwwxgBHAGTMACMkEMYwASgSUAAhAQIBCIWUUAAIAQ
         acoustid_id: 52fc8350-7a31-4bca-a8c0-bb120bb637b2
               album: Mirage
         albumartist: Plini
  albumartist_credit: Plini
    albumartist_sort: Plini
         albumstatus: Official
           albumtype: [
          albumtypes: [; '; e; '; ,;  ; '; p; '; ]
            arranger: 
                 art: True
              artist: Plini
       artist_credit: Plini
         artist_sort: Plini
            bitdepth: 0
             bitrate: 320000
        bitrate_mode: CBR
                 bpm: 0
            channels: 2
                comp: False
             country: XW
                date: 2023-12-01
                 day: 1
                disc: 1
           disctotal: 1
        encoder_info: 
    encoder_settings: 
              format: MP3
               genre: Unset
              genres: Unset
                isrc: AUGBT2344515
            language: eng
           languages: eng
              length: 397.032
              lyrics: 
    mb_albumartistid: 3f6c0aa1-a7a9-4ff2-9c50-e84d4b0de178
   mb_albumartistids: 3f6c0aa1-a7a9-4ff2-9c50-e84d4b0de178
          mb_albumid: 27ee6d3c-54c1-4c94-b6f3-e19d45a4b93f
         mb_artistid: 3f6c0aa1-a7a9-4ff2-9c50-e84d4b0de178
        mb_artistids: 3f6c0aa1-a7a9-4ff2-9c50-e84d4b0de178
   mb_releasegroupid: e98f1b1c-4f85-4cb8-9d70-1fa117c31ef3
   mb_releasetrackid: fda2811d-515e-4965-bfb7-69bc9be88f29
          mb_trackid: 3f02a861-cd61-4185-a9ec-ea276603a305
               media: Digital Media
               month: 12
       original_date: 2023-12-01
        original_day: 1
      original_month: 12
       original_year: 2023
       rg_album_gain: -8.34
       rg_album_peak: 0.988553
       rg_track_gain: -8.4
       rg_track_peak: 0.977237
          samplerate: 48000
              script: Latn
               title: The Red Fox
               track: 1
          tracktotal: 5
                year: 2023

Though it does populate the multi-tag fields mb_albumartistids 🤔

Sanity check that I'm on latest master w/multi tags:

beet fields | grep albumartists
  albumartists
  albumartists_credit
  albumartists_sort
  albumartists
  albumartists_credit
  albumartists_sort

When I try to update:

beet update -p artist:Plini album:Mirage track:1  # returns nothing

Setup

My configuration (output of beet config) is:

plugins: deezer mbsync inline fetchart convert scrub replaygain chroma permissions info web
directory: /tagged
library: /config/musiclibrary.blb
art_filename: folder
threaded: yes
original_date: yes
per_disc_numbering: yes

deezer:
    source_weight: 0.0

match:
    strong_rec_thresh: 0.10
    ignored: missing_tracks unmatched_tracks

convert:
    auto: yes
    ffmpeg: /usr/bin/ffmpeg
    opts: -ab 320k -ac 2 -ar 48000
    max_bitrate: 320
    threads: 1
    quiet: yes
    never_convert_lossy_files: yes
    embed: no
    delete_originals: yes
    #tmpdir: /downloads/.tmp/

item_fields:
    multidisc: 1 if disctotal > 1 else 0

paths:
    default: $albumartist/[$original_year] $album%aunique{}/%if{$multidisc,$disc-}$track - $title
    singleton: Non-Album/$artist - $title
    comp: Various Artists/[$original_year] $album%aunique{}/%if{$multidisc,$disc-}$track - $title
    albumtype_soundtrack: Soundtracks/[$original_year] $album%aunique{}/%if{$multidisc,$disc-}$track - $title 

import:
    write: yes
    copy: no
    move: yes
    resume: ask
    incremental: yes
    quiet_fallback: skip
    timid: no
    log: /config/beet.log
    set_fields:
      genre: "Unset"

musicbrainz:
    extra_tags: [year, originalyear, catalognum, country, media, label]

fetchart:
    auto: yes
    cover_names: cover front art album folder
    enforce_ratio: yes
    sources:
      - coverart
      - itunes
      - amazon
      - albumart
      - fanarttv
      - wikipedia
      - filesystem

replaygain:
    auto: yes
    backend: ffmpeg
    overwrite: yes

scrub:
    auto: yes

permissions:
    file: 664
    dir: 775

replace:
    '^\.': _
    '[\x00-\x1f]': _
    '[<>:"\?\*\|]': _
    '[\xE8-\xEB]': e
    '[\xEC-\xEF]': i
    '[\xE2-\xE6]': a
    '[\xF2-\xF6]': o
    '[\xF8]': o
    '\.$': _
    '\s+$': ''

clutter:
  - "*.png"
  - "*.jpg"
  - "*.nfo"
  - "*.txt"
  - "Thumbs.DB"
  - ".DS_Store"

pluginpath:
    - /config/beets/beetsplug
jmbannon commented 8 months ago

Okay I think I found the root-cause - when I removed deezer, everything seemed to work as expected. I think what happened was deezer took priority in fetching/writing tags, and did not fetch any albumartists since that is only a musicbrainz thing.

arogl commented 8 months ago

@JOJ0 I think we still have a problem getting Musicbrainz data if you look at the beet info output above for the 2 fields albumtype and albumtypes

mbrandis commented 8 months ago

I would like to add, that I also see the problem with the strange albumtypes. When I execute a beet update -p basically all tracks would be changed to something like this:

[...]
ARTIST - ALBUM - TRACK
  albumtypes: album -> ['a', 'l', 'b', 'u', 'm']
  albumtype: album -> a
[...]
ARTIST - ALBUM - TRACK
  albumtypes: album; soundtrack -> ['a', 'l', 'b', 'u', 'm', ';', ' ', 's', 'o', 'u', 'n', 'd', 't', 'r', 'a', 'c', 'k']
  albumtype: soundtrack -> a
[...]
ARTIST - ALBUM - TRACK (live)
  albumtypes: album; live -> ['a', 'l', 'b', 'u', 'm', ';', ' ', 'l', 'i', 'v', 'e']
  albumtype: live -> a
[...]
JOJ0 commented 8 months ago

@mbrandis Your issue has been fixed already in #4582., please head over to https://github.com/beetbox/beets/issues/4715#issue-1628853120 to read all the details about what possibly remains to be fixed in your library. Please update to latest git and then post if you still have problems over there. Thank you.

mbrandis commented 8 months ago

Thank you for the hint. I didn't found these issues. I use the current version of beets from Debian unstable (1.6.0-7) and I couldn't find out if this version already had the fix. So I tested beet mbsync and magically everything fixed itself. :-) Thank you!

petwri commented 8 months ago

I am on 1.6.0 on ubuntu, installed via pip, but I am still facing this issue. beet update, beet mbsync and beet write says it writes updated tags to flac-files, but checking with metaflac --list still shows multiple tags for RELEASETYPE and MUSICBRAINZ_ALBUMTYPE:

    comment[11]: RELEASETYPE=a
    comment[12]: RELEASETYPE=l
    comment[13]: RELEASETYPE=b
    comment[14]: RELEASETYPE=u
    comment[15]: RELEASETYPE=m
    comment[16]: MUSICBRAINZ_ALBUMTYPE=a
    comment[17]: MUSICBRAINZ_ALBUMTYPE=l
    comment[18]: MUSICBRAINZ_ALBUMTYPE=b
    comment[19]: MUSICBRAINZ_ALBUMTYPE=u
    comment[20]: MUSICBRAINZ_ALBUMTYPE=m

Beets itself however seems to be using the correct tags:

beet list -f '$albumtype $albumtypes' path:/media/downloads
album album
album album
album album
album album
album album
album album
album album
album album
album album
album album
album album

How should I go forward?

JOJ0 commented 8 months ago

@petwri https://github.com/beetbox/beets/issues/5059#issuecomment-1886696153

in short: install git master and read above to fix your library. HTH :-)