function buildImpulse() {
	
		var length = Pz.context.sampleRate * this.time;
		var impulse = Pizzicato.context.createBuffer(2, length, Pz.context.sampleRate);
		var impulseL = impulse.getChannelData(0);
		var impulseR = impulse.getChannelData(1);
		var n, i;
	
		for (i = 0; i < length; i++) {
			n = this.reverse ? length - i : i;
			impulseL[i] = (Math.random() * 2 - 1) * Math.pow(1 - n / length, this.decay);
			impulseR[i] = (Math.random() * 2 - 1) * Math.pow(1 - n / length, this.decay);
		}
	
	        // https://github.com/alemangui/pizzicato/issues/91
	        // ConvolverNode can be associated with only one buffer.
	        // Not sure what's the best way, but we are recreating ConvolverNode
	        // when properties change to work it around.
	        if (this.reverbNode.buffer) {
	          this.inputNode.disconnect(this.reverbNode);
	          this.reverbNode.disconnect(this.wetGainNode);
	
	          this.reverbNode = Pizzicato.context.createConvolver();
	          this.inputNode.connect(this.reverbNode);
	          this.reverbNode.connect(this.wetGainNode);
	        }
	
		this.reverbNode.buffer = impulse;
	}
Adapted from https://github.com/web-audio-components/simple-reverb