87 snippets
0
0v
⚡ Snippets
🎹 Playground
🥁 Drumcomputer
📐 Formulas
🗂️ Patches
🦀 Wasm Lab
Oscillator
Sine
Saw
Square
Triangle
Poly / Unison
Mono
2v
4v
8v
Detune (cents)
Envelope (ADSR)
Filter
Macro Knobs
Portamento
Aan
Glide tijd (ms)
80ms
Arpeggiator
ARP
Rate
Octaves
Effects
Delay
Reverb
Drive
MIDI
Niet verbonden
Oscilloscoop
XY Pad
X=Filter Q · Y=Cutoff
Spectrum
Keyboard (QWERTY: A S D F G H J K L)
120
BPM
Patch Library
A
A ↔ B Morph
0%
B
Huidig Patch JSON
{}
Mod Matrix — huidige patch
🦀 Wasm Lab

Schrijf DSP-code als Rust (of C via Emscripten), compileer naar .wasm en draai live in de browser via AudioWorklet. Hier heb je de boilerplate, architectuurdiagrammen en een ingebouwde Rust-sine oscillator als bewijs.

Toolchain kiezen
🦀 Rust + wasm-pack
⚙️ C + Emscripten
🎛️ Faust → Wasm
📜 AssemblyScript
Wat draait nu?
Sample Rate
Latency
440
Freq (Hz)
0
Wasm Voices
Frequency
20Hz440 Hz2kHz
Waveform (JS Wasm-sim)
Sine
Saw
Square
Noise
Architectuur: AudioWorklet + Wasm signal path
Main Thread
JS / UI
postMessage

SharedArrayBuffer
AudioWorklet
process()
ptr / heap
Wasm
Rust / C

Float32Array
AudioContext
destination
Wasm draait inside de AudioWorklet — geen cross-thread kopieën tijdens process(). Params via SharedArrayBuffer zijn lock-free (Atomics). Latency: alleen AudioContext base latency (~5ms op Chrome).
Wasm Oscilloscoop Gesimuleerd in JS (echte Wasm = identiek)
Build Commands per Toolchain
JS vs Wasm Benchmark (Moog Ladder × 1000 samples)
JavaScript
Wasm (simulated)
Quick-copy Wasm Snippets