diff --git a/src/plugins/htmlAudioPlayer/plugin.js b/src/plugins/htmlAudioPlayer/plugin.js
index 131b8cdfee..067d94c48c 100644
--- a/src/plugins/htmlAudioPlayer/plugin.js
+++ b/src/plugins/htmlAudioPlayer/plugin.js
@@ -124,13 +124,17 @@ class HtmlAudioPlayer {
}
if (normalizationGain) {
- self.gainNode.gain.value = Math.pow(10, normalizationGain / 20);
- self.normalizationGain = self.gainNode.gain.value;
+ self.normalizationGain = Math.pow(10, normalizationGain / 20);
+ self.gainNode.gain.value = self.normalizationGain;
} else {
self.gainNode.gain.value = 1;
self.normalizationGain = 1;
}
- console.debug('gain: ' + self.gainNode.gain.value);
+ if (browser.safari) {
+ // Gain value is absolute in Safari. Add volume from the slider
+ self.gainNode.gain.value *= elem.volume;
+ }
+ console.debug('gain: ' + self.normalizationGain);
}).catch((err) => {
console.error('Failed to add/change gainNode', err);
});