beetbox / beetbox/beets

Adding bpm tag leads to addition of several more unwanted tags

Open
#6,627 13 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
15.7k
Forks
2.1k
Avg merge
4d 21h
Merged PRs (30d)
31

Description

Hey, I want to add the bpm tag with the autopbm plugin to my metadata. But it also adds comp = false (if previously set to true) and album artist and album_artists tags and several more.

Also one question: I do not want to use any autotagging whatsoever. i just want to calculate bpm for each file. Is there an option to just do it when using import. because right now i have to set the option (U) for every file.

### Problem

```sh
beet import D:\beets\music

#D:\beets\music\Above Only\(2012) Above Only (1 items)
#No matching release found for 1 tracks.
#For help, see: https://beets.readthedocs.org/en/latest/faq.html#nomatch
#➜ [S]kip, Use as-is, as Tracks, Group albums, Enter search, enter Id, aBort? U

#press U

beet write -P

#Above Only - Above Only - Evil Never Sleeps
# bpm: 0 -> 129

beet write

```

Led to this problem:

Now inspecting the metadata of the file there are many additional tags to the bpm tag. like album_artists , discc, etc. and on other songs where the compilation tag was set. it just want to set it to false.

### Setup

* OS: Windows 10
* Python version: 3.11.4
* beets version: 2.11.0

My configuration (output of `beet config`) is:

```yaml
directory: D:\beets\music
library: D:\beets\musiclibrary.db
import:
copy: no # Use files in place
plugins:
- autobpm
autotag: no
autobpm:
auto: yes
force: no
beat_track_kwargs: {}
quiet: no
```

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the reported workflow with the autobpm plugin and the supplied configuration: run beet import, choose Use as-is, then compare beet write -P with beet write. Inspect which metadata tags change alongside bpm and separately verify whether the configuration can calculate BPM during import without requiring the per-file U choice; done when unwanted tag changes and the import behavior are resolved or clearly documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.