NOTE: This project is no longer maintained (and hasnt been for years). I wrote this when I was much younger and experimenting in Audio and DSP. This is no longer much of a passion of mine.
DSP.js is a digital signal processing library for javascript. It includes many functions for signal analysis and generation, including Oscillators (sine, saw, square, triangle), Window functions (Hann, Hamming, etc), Envelopes (ADSR), IIR Filters (lowpass, highpass, bandpass, notch), FFT and DFT transforms, Delays, Reverb.
DFT(bufferSize, sampleRate)
: Discrete Fourier Transform
var dft = new DFT(1024, 44100); dft.forward(signal); var spectrum = dft.spectrum;
FFT(bufferSize, sampleRate)
: Fast Fourier Transform
var fft = new FFT(2048, 44100); fft.forward(signal); var spectrum = fft.spectrum;
Oscillator(waveform, frequency, amplitude, bufferSize, sampleRate)
: Signal Generator
var osc = new Oscillator(SINEWAVE, 440, 1, 2048, 22050); osc.generate(); var signal = osc.signal;
ADSR(attack, decay, sustainLevel, sustain, release, sampleRate)
: Attack-Decay-Sustain-Release Envelope
var envelope = new ADSR(0.01, 0.1, 0.5, 0.1, 0.2, 44100); envelope.process(signal);
IIRFilter(filter, cutoff, sampleRate)
: Infinite Impulse Response Filters
var filter = IIRFilter(LOWPASS, 200, 44100); filter.process(signal);
MultiDelay(maxDelayInSamplesSize, delayInSamples, masterVolume, delayVolume)
: Delay which feeds back its own delayed signal
var delay = MultiDelay(44100*5, 44100*1, 1.0, 0.6); delay.process(signal);
Reverb(maxDelayInSamplesSize, delayInSamples, masterVolume, mixVolume, delayVolume, dampFrequency)
: Reverb
var reverb = Reverb(20000, 6500, 0.8, 0.5, 0.9, 4500); reverb.process(signal);
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.3