diff --git a/src/effects/PanEffect.js b/src/effects/PanEffect.js index a31890b..b8090e0 100644 --- a/src/effects/PanEffect.js +++ b/src/effects/PanEffect.js @@ -41,8 +41,8 @@ class PanEffect { const leftVal = Math.cos(p * Math.PI / 2); const rightVal = Math.sin(p * Math.PI / 2); - this.leftGain.gain.setTargetAtTime(leftVal, 0, this.audioEngine.ONE_THIRD_FRAME); - this.rightGain.gain.setTargetAtTime(rightVal, 0, this.audioEngine.ONE_THIRD_FRAME); + this.leftGain.gain.setTargetAtTime(leftVal, 0, this.audioEngine.DECAY_TIME); + this.rightGain.gain.setTargetAtTime(rightVal, 0, this.audioEngine.DECAY_TIME); } /** diff --git a/src/index.js b/src/index.js index 3cab5d8..501452f 100644 --- a/src/index.js +++ b/src/index.js @@ -122,7 +122,7 @@ class AudioPlayer { this.panEffect.set(0); this.pitchEffect.set(0, this.activeSoundPlayers); if (this.audioEngine === null) return; - this.effectsNode.gain.setTargetAtTime(1.0, 0, this.audioEngine.ONE_THIRD_FRAME); + this.effectsNode.gain.setTargetAtTime(1.0, 0, this.audioEngine.DECAY_TIME); } /** @@ -131,7 +131,7 @@ class AudioPlayer { */ setVolume (value) { if (this.audioEngine === null) return; - this.effectsNode.gain.setTargetAtTime(value / 100, 0, this.audioEngine.ONE_THIRD_FRAME); + this.effectsNode.gain.setTargetAtTime(value / 100, 0, this.audioEngine.DECAY_TIME); } } @@ -167,15 +167,13 @@ class AudioEngine { } /** - * The duration in seconds of one third of one frame, at 30 frames per second. - * This is useful for setting web audio time constants. For example, in order for - * a gain to reach 95% of its target value in one frame, use this time constant. + * A short duration, for use as a time constant for exponential audio parameter transitions. * See: * https://developer.mozilla.org/en-US/docs/Web/API/AudioParam/setTargetAtTime * @const {number} */ - get ONE_THIRD_FRAME () { - return (1 / 30) / 3; + get DECAY_TIME () { + return 0.001; } /**