mirror of
https://git.sr.ht/~joren/streamrip-go
synced 2026-06-17 15:05:39 +02:00
map deezer gain to replaygain track metadata
This commit is contained in:
@@ -1248,6 +1248,9 @@ func buildTagMetadata(trackMeta map[string]any, title, source, trackID string, o
|
||||
if trackGain == "" {
|
||||
trackGain = replaygainGainFromAny(trackMeta["replayGain"])
|
||||
}
|
||||
if trackGain == "" {
|
||||
trackGain = replaygainGainFromAny(trackMeta["gain"])
|
||||
}
|
||||
albumGain := replaygainGainFromAny(trackMeta["replaygain_album_gain"])
|
||||
if albumGain == "" {
|
||||
albumGain = replaygainGainFromAny(nestedAny(trackMeta, "album", "replaygain_album_gain"))
|
||||
|
||||
@@ -621,3 +621,16 @@ func TestBuildTagMetadataReplayGainFallbacks(t *testing.T) {
|
||||
t.Fatalf("album replaygain peak=%q", tags.ReplaygainAlbumPeak)
|
||||
}
|
||||
}
|
||||
|
||||
func TestBuildTagMetadataReplayGainFallsBackToDeezerGain(t *testing.T) {
|
||||
meta := map[string]any{
|
||||
"gain": float64(-10),
|
||||
"performer": map[string]any{"name": "Artist"},
|
||||
"album": map[string]any{"title": "Album"},
|
||||
}
|
||||
|
||||
tags := buildTagMetadata(meta, "Song", "deezer", "2675762392", ripTrackOptions{})
|
||||
if tags.ReplaygainTrackGain != "-10 dB" {
|
||||
t.Fatalf("track replaygain gain=%q", tags.ReplaygainTrackGain)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user