diff --git a/pcm-player.js b/pcm-player.js index eb5a73f..9da3f81 100644 --- a/pcm-player.js +++ b/pcm-player.js @@ -42,6 +42,11 @@ PCMPlayer.prototype.getTypedArray = function () { PCMPlayer.prototype.createContext = function() { this.audioCtx = new (window.AudioContext || window.webkitAudioContext)(); + + // context needs to be resumed on iOS and Safari (or it will stay in "suspended" state) + this.audioCtx.resume(); + this.audioCtx.onstatechange = () => console.log(this.audioCtx.state); // if you want to see "Running" state in console and be happy about it + this.gainNode = this.audioCtx.createGain(); this.gainNode.gain.value = 1; this.gainNode.connect(this.audioCtx.destination); @@ -123,4 +128,4 @@ PCMPlayer.prototype.flush = function() { bufferSource.start(this.startTime); this.startTime += audioBuffer.duration; this.samples = new Float32Array(); -}; \ No newline at end of file +};