aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorin Popescu <flo.popescu@proton.me>2026-07-28 19:48:51 +0200
committerFlorin Popescu <flo.popescu@proton.me>2026-07-28 19:53:50 +0200
commitf6f0fed2d133481ba225fed06d18a656125b7948 (patch)
tree48b82da3b6b387166f5219ee0ee0633ebbd922fd
parente2adf2e2bf84c6f2ea33eeae191a506a29adb059 (diff)
skip album ReplayGain parsing if no album or value already present
-rw-r--r--MediaBrowser.Providers/MediaInfo/AudioFileProber.cs18
1 files changed, 9 insertions, 9 deletions
diff --git a/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs b/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs
index d592d99459..81d4b640a3 100644
--- a/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs
+++ b/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs
@@ -468,18 +468,18 @@ namespace MediaBrowser.Providers.MediaInfo
}
}
- TryGetSanitizedAdditionalFields(track, "REPLAYGAIN_ALBUM_GAIN", out var trackAlbumGainTag);
-
- if (trackAlbumGainTag is not null)
+ if (audio.AlbumEntity is not null && !audio.AlbumEntity.NormalizationGain.HasValue)
{
- if (trackAlbumGainTag.EndsWith("db", StringComparison.OrdinalIgnoreCase))
- {
- trackAlbumGainTag = trackAlbumGainTag[..^2].Trim();
- }
+ TryGetSanitizedAdditionalFields(track, "REPLAYGAIN_ALBUM_GAIN", out var trackAlbumGainTag);
- if (float.TryParse(trackAlbumGainTag, NumberStyles.Float, CultureInfo.InvariantCulture, out var value) && float.IsFinite(value))
+ if (trackAlbumGainTag is not null)
{
- if (audio.AlbumEntity is not null && !audio.AlbumEntity.NormalizationGain.HasValue)
+ if (trackAlbumGainTag.EndsWith("db", StringComparison.OrdinalIgnoreCase))
+ {
+ trackAlbumGainTag = trackAlbumGainTag[..^2].Trim();
+ }
+
+ if (float.TryParse(trackAlbumGainTag, NumberStyles.Float, CultureInfo.InvariantCulture, out var value) && float.IsFinite(value))
{
audio.AlbumEntity.NormalizationGain = value;
}