Skip to content

Commit da220a9

Browse files
gnattukevgrig
authored andcommittedJan 7, 2025
Backport pull request jellyfin#5923 from jellyfin-web/release-10.9.z
Fix safari volume being reset when track changed Original-merge: 6a8f21e Merged-by: thornbill <[email protected]> Backported-by: Joshua M. Boniface <[email protected]>
1 parent 4d02613 commit da220a9

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed
 

‎src/plugins/htmlAudioPlayer/plugin.js

+7-3
Original file line numberDiff line numberDiff line change
@@ -124,13 +124,17 @@ class HtmlAudioPlayer {
124124
}
125125

126126
if (normalizationGain) {
127-
self.gainNode.gain.value = Math.pow(10, normalizationGain / 20);
128-
self.normalizationGain = self.gainNode.gain.value;
127+
self.normalizationGain = Math.pow(10, normalizationGain / 20);
128+
self.gainNode.gain.value = self.normalizationGain;
129129
} else {
130130
self.gainNode.gain.value = 1;
131131
self.normalizationGain = 1;
132132
}
133-
console.debug('gain: ' + self.gainNode.gain.value);
133+
if (browser.safari) {
134+
// Gain value is absolute in Safari. Add volume from the slider
135+
self.gainNode.gain.value *= elem.volume;
136+
}
137+
console.debug('gain: ' + self.normalizationGain);
134138
}).catch((err) => {
135139
console.error('Failed to add/change gainNode', err);
136140
});

0 commit comments

Comments
 (0)