beetbox / beetbox/beets

Ignore small changes in ReplayGain/SoundCheck values caused by storage format

Open
#1,928 10 comments 0 reactions 0 assignees View on GitHub
bug replaygain
Dominant language
Python
Stars
15.7k
Forks
2.1k
Avg merge
4d 21h
Merged PRs (30d)
31

Description

### Problem

Hey,
I keep getting these errors when running `beet write`.

``` sh
$ beet write howard
Ben Howard : Every Kingdom : 01/00 Old Pine
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 01/00 Old Pine
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 02/00 Diamonds
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 03/00 The Wolves
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 03/00 Wolves
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 04/00 Everything
rg_album_gain: 0.8 -> 1.0
Ben Howard : Every Kingdom : 04/00 Everything
rg_album_gain: 0.8 -> 1.0
Ben Howard : Every Kingdom : 05/00 Only Love
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 05/00 Only Love
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 06/00 The Fear
rg_album_gain: 1.1 -> 1.0
Ben Howard : Every Kingdom : 06/00 The Fear
rg_album_gain: 1.1 -> 1.0
Ben Howard : Every Kingdom : 07/00 Keep your Head up
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 07/00 Keep Your Head Up
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 08/00 Black Flies
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 08/00 Black Flies
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 09/00 Gracious
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 10/00 Promise
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 11/00 7 Bottles
rg_album_gain: 1.0 -> 1.0
Ben Howard : Every Kingdom : 11/00 Seven Bottles (Bonus Track)
rg_album_gain: 1.0 -> 1.0
```

The fields don't seem to update. Running either `beet mod kingdom rg_album_gain=1.0` or `beet mod -a kingdom rg_album_gain=1.0` changes the number to the right of the arrow, so I'm guessing the number to the left is the number recorded in the database?

As I understand it, if the number in the database is wrong, I ought to be able to run `beet up` to fix the discrepancy, right? However, `beet up` does nothing and produces no output whatsoever..
### Setup
- OS: Arch Linux
- Python version: 3.5.1 and 2.7.11
- beets version: 1.3.17
- Turning off plugins made problem go away (yes/no): no

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

``` yaml
paths:
albumtype:soundtrack: Soundtracks/$album/$track. $title
media:podcast: Podcasts/$album/$title
default: $albumartist/$album/$track. $title
singleton: Non-Album/$artist/$title%aunique{}
comp: Compilations/$album%aunique{}/$track. $title

format_item: '$albumartist : $album : $track/$tracktotal $title'
duplicates:
checksum: ffmpeg -i {file} -f crc -
format: '$albumartist : $album : $track/$tracktotal $title : $format @ $bitrate'
keys: [ffmpeg]
count: no
full: no
move: ''
tag: ''
path: no
copy: ''
tiebreak: {}
album: no
strict: no
merge: no
delete: no
library: ~/.config/beets/musiclib_final.blb
edit:
ignore_fields: id path artpath
itemfields: track title artist album
albumfields: album albumartist
replaygain:
backend: gstreamer
overwrite: yes
targetlevel: 89
auto: yes

plugins: web bpd duplicates ftintitle edit replaygain info
directory: ~/music_final

import:
move: yes
timid: yes
autotag: no
ftintitle:
auto: yes
drop: no
format: feat. {0}
bpd:
volume: 100
host: ''
password: REDACTED
port: 6600
web:
host: 127.0.0.1
port: 8337
cors: ''
```

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the report with `beet write` using the replaygain plugin, then trace the ReplayGain/SoundCheck comparison and tag-writing path. Identify the relevant tests if present; done means storage-format-only changes no longer produce write reports, while meaningful gain changes still do.

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
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.