Adding bpm tag leads to addition of several more unwanted tags
- 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
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