Playback:
Track:
Load example...
Tempo:
Instrument:
Strum speed:
var period = Math.floor(rate / frequency); var decay = 0.993 / 2; var length = buffer.length - period; var noiseScale = 3.0 / period; // Random excitation for (var i = 0; i < period; i++) { buffer[i] = noise(i * noiseScale) * 2 - 1; } // Lowpass ringbuffer for (var i = 0; i < length; i++) { buffer[i + period] = (buffer[i] + buffer[i + 1]) * decay; }