spectral-sampler
Projects
-
k2k is a node-based spectral audio explorer and polyrhythmic sequencer in one application.
Editor mode — load audio, build processing chains with a visual node graph, and see the results through four scopes: waveform, spectrum, spectrogram, and 3D spectral terrain. Eighteen color modes act as different lenses on the same sound — amplitude, harmonics, transients, phase behavior, formants, and more. What you see, you can extract with nodes, process, morph, and recombine.
Player mode — an 8-track polyrhythmic sequencer where every track runs independently. Different pattern lengths, different time divisions, per-substep parameter control, Euclidean pattern generation. Sounds processed in the Editor flow into the Player’s sample bank.
The two modes connect through a shared workflow: dissect and transform audio in the Editor, perform and compose with it in the Player.
k2k runs standalone on Linux, macOS, and Windows, with a VST bridge for DAW integration (8 audio tracks, bidirectional MIDI/OSC).
Status: Late alpha. Available to Patreon supporters.
Documentation
- Editor — graph-based spectral sample prep. Reference (scopes, color modes, modulation), every node by category.
- Player — polyrhythmic step sequencer. Reference (panels, scopes, parameter contexts, grid automation).
Documentation
- Audio I/O
The doorway in. - Load Audio File
LoadAudio is the source for almost every K2K graph. - Visual Blend
Visual Blend applies image-processing blend modes (the same ones in Photoshop, GIMP, video compositing tools) to the spectral magnitudes of two inputs. - Multi-Tap Delay
MultiTap Delay produces multiple delayed copies of the input, with each "tap" having its own delay time, level, and stereo position. - BitCrusher
Bit Crusher is the lo-fi destruction node — pairs bit_depth reduction (quantization staircase) with rate_factor sample-rate reduction (downsampling aliasing)… - Compressor (Native)
Native Compressor is K2K's full-featured dynamics processor — threshold/ratio/attack/release/knee/makeup with sidechain HPF, peak/RMS detection, and four… - HPSS Extractor
HPSS (Harmonic-Percussive Source Separation) is a classic audio decomposition algorithm that splits a signal into three streams. - Multimode Filter
Most modern multimode filters offer a choice of "circuit" — different ways to arrange the same basic filter math, each with subtly (or dramatically) different… - Unified Mask
Unified Mask is the master mask node — combines all three selection dimensions (frequency, amplitude, time) into one. - Spectral Mod Delay
Spectral Mod Delay is the spectral-domain cousin of the regular Mod Delay. - Neural Stem Separator
Neural Stem Separator runs Demucs v4 (htdemucs) — currently the strongest open-source source-separation model — to split a mixed audio recording into 4… - Phase Playground
Phase Playground is K2K's creative phase laboratory — six discrete operators ranging from coherence repair (Smooth, Lock) through decorrelation (Randomize) to… - Pitch Shift
Pitch Shift is K2K's main phase-vocoder pitch shifter — preserves duration, shifts pitch, with quality/latency trade-off via fft_size. - Click Repair
Click Repair is K2K's surviving spectral-repair node — the only one to come through the late April / early May phase-category retraction (PhasePlayground was… - Reverb (Native)
Native Reverb is K2K's algorithmic reverb workhorse — a tunable space modeler with separate controls for size, damping, predelay, width, early reflections… - Slicer
Slicer is the entry point for K2K's MPC-style sampling workflow: take a recording, chop it into discrete slices, then pipe to Collage (assemble into sequences)… - Spatial Lab
Spatial Lab is the workhorse mono → stereo positioner: pan with three classic laws, optional M/S width, optional Doppler for moving sources. - Subgraph
Subgraph encapsulates a group of nodes as a single reusable unit — like a "macro" or "subroutine" in other modular systems. - Smooth
Smooth applies a Gaussian blur to the spectral magnitude — the inverse operation of Sharpen. - Time Reverse
Reversing audio is normally a time-domain operation: play the samples backward. - Gain — Simple gain control for audio signals
Gain is the simplest signal-conditioning node in K2K — one slider in dB, one normalize toggle. - CrossMorph
Blending two sounds into one. - Visual Morph
Where Visual Blend mixes the magnitudes of A and B (using various blend modes), Visual Morph interpolates the spectral peaks themselves — using B-spline curve… - Matrix Delay
Matrix Delay is a 4-delay-line FDN (feedback delay network) with a 4×4 gain matrix that controls how each line feeds into the others. - Wavefolder
Wavefolding comes from West Coast synthesis (Buchla, Serge), where it's a primary tone-shaping element instead of a distortion afterthought. - Limiter (Native)
A limiter is essentially a compressor with infinite ratio and a fast attack — anything that tries to exceed the ceiling gets clamped down hard. - Spectral Envelope Extractor
Speech and many instrument sounds can be modeled as a "source" (the buzzing of vocal cords, the buzz of an oboe reed, the noise of a snare) passed through a… - Comb Resonator
A comb filter is a delay line fed back on itself — short delays create resonant tones at their reciprocal frequency (a 2.27 ms delay resonates at 440 Hz). - Amplitude Mask
Amplitude Mask selects spectral bins by their magnitude in dB — keep only bins between amp_min and amp_max, send the rest to the rejected output. - Mod Delay
Mod Delay is a short-delay-line modulation effect. - DDSP Resynth
DDSP Resynth implements Google's Differentiable Digital Signal Processing pipeline: extract pitch + loudness + harmonic distribution + noise filter from an… - Harmonizer
Harmonizer stacks 2–4 pitch-shifted copies of the input on top of itself for harmony generation — set intervals via the multi-point widget, balance each voice… - Dattorro Plate Reverb
The Dattorro plate reverb (designed by Jon Dattorro and published in his classic 1997 paper) is one of the most musical algorithmic reverbs ever designed. - Collage
Collage is K2K's MPC-style sequence assembler — turn a SliceContainer into a final piece of audio by laying out entries on a timeline, each entry being "play… - Spatial Mix
Spatial Mix places two mono sources independently in a stereo scene with a shared distance model. - Template
Template inherits everything from Subgraph (execution, ports, exposed params, double-click navigation) — only the persistence model differs. - Sharpen
Sharpen applies a Laplacian convolution kernel (the same image-processing filter used to enhance edges in photos) to the spectral magnitude. - Time Crop
Time Crop extracts a specific time region from the input ComplexBuffer, optionally with fades at the boundaries. - Mixer
Mixer is the workhorse multi-input mono-summer — N spectral inputs in, one mixed spectral output. - Timbre Morph
Timbre Morph is K2K's most distinctive crossmorph operation. - Delay
Echoes and rhythmic repeats. - Delay (Native)
Native Delay is K2K's full-featured stereo delay — two delay lines (L/R), independent or synced, with feedback, filtering inside the feedback path, stereo… - Harmonic Shaper
K2K's Harmonic Shaper uses Chebyshev polynomials, which let each h-knob control the amplitude of one specific harmonic with surgical precision — h2 controls… - Gate (Native)
Native Gate is the inverse of the compressor — silences (or attenuates) signal below threshold rather than clamping signal above it. - Transient Extractor
Every K2K extractor produces two outputs: extracted (the part you asked for) and rejected (everything else). - Parametric EQ
The Parametric EQ exposes 4 bands: a low shelf, two parametric (peaking) bands, and a high shelf. - Frequency Band Mask
Frequency Band Mask selects spectral bins by frequency — keeps everything between low_freq and high_freq, drops the rest. - Frequency Shifter
Pitch shifting (semitones) preserves musical intervals — a chord stays a chord, harmonics stay harmonic. - Shimmer Reverb
Shimmer reverb (popularized by the Eventide H8000 and similar units, used heavily on cinematic strings, ambient guitars, and worship music) is a reverb where… - Slices Parser
Slices Parser is the "fan-out" node of the slicing workflow: it takes a SliceContainer and exposes each slice as its own ComplexBuffer output port, so you can… - Subgraph Input — Defines an input port for the subgraph
Subgraph Input is the entry point for external data into a subgraph — placing one inside a Subgraph (or Template) creates a corresponding input port on the… - Dynamic Brightness
This node uses Harmonic-Percussive Source Separation (HPSS) to split the input into three streams — harmonic (sustained pitched content), percussive… - Time Concat
Time Concat joins two ComplexBuffers in sequence — Input A first, then Input B. - Stereo Mixer
Stereo Mixer turns N mono spectral inputs into a stereo (dual-port L/R) output with per-channel pan and gain — the natural choice when you've got several mono… - Formant Morph
Formant Morph splits each input into "excitation" (pitch/source) and "envelope" (formants/filter), interpolates the envelopes between A and B, then re-applies… - Distortion
From gentle warmth to controlled destruction. - Soft Clipper (Native)
Native Soft Clipper is the lightest member of the distortion family — peak management first, harmonic coloration second. - Expander (Native)
Expansion is the gentler cousin of gating. - Noise Floor Extractor
Every recording has a noise floor: the constant low-level content that's not the intended program material — mic self-noise, preamp hiss, room tone, HVAC… - Envelope Resonator
An envelope resonator is a resonator (like the Comb Resonator) whose ring is gated by the input level. - Leslie
The Leslie speaker cabinet (originally designed by Don Leslie in the 1940s) was the iconic partner to the Hammond B3 organ. - Spring Reverb
Spring reverb is a vintage reverb technology where audio drives a transducer at one end of a metal spring, and a pickup at the other end captures the signal as… - Slices Concatener
Slices Concatener is the "fan-in" node — collects N independent ComplexBuffer inputs and packs them back into a SliceContainer. - Subgraph Output
Subgraph Output is the exit point for processed data from a subgraph — placing one inside creates a corresponding output port on the parent SubgraphNode. - Spectral Saturation
Time-domain saturation (the kind in the Saturator and SoftClipper nodes in the Distortion category) works by waveshaping — bending the waveform to generate… - Time Warp
Time Warp is non-linear time-stretching. - Trimmer
Trimmer crops a region of the input by start/end markers and optionally shapes its amplitude with a built-in ADSR envelope — handy for previewing slices before… - Spectral Morph
This node decomposes both inputs into harmonic, percussive, and residual streams (using HPSS — see HPSS Extractor for the algorithm), blends each stream… - Saturator (Native)
Native Saturator is the color-focused middle ground of the distortion family — sits between Native Soft Clipper (peak management with mild coloring) and Native… - Dynamics
Volume control with a brain. - Spectral Compressor
Spectral dynamics nodes are unique to K2K's domain: they operate on the spectral data directly, frame-by-frame, with independent control over each frequency… - Micro Transient Extractor
Where the regular Transient Extractor catches musical attacks (drum hits, plucks, plosives — events with 10–100 ms attack windows), the Micro Transient… - Monophonic Noise Filter
This node assumes the input is monophonic — a single voice, a single solo instrument — and uses pitch detection to identify which spectral content belongs to… - Phaser (Native)
A phaser passes the audio through a chain of allpass filters whose center frequencies are modulated by an LFO. - Convolution Reverb
Convolution reverb works by recording the impulse response (IR) of a real space (or a piece of gear), then mathematically applying that IR to your audio — the… - Memory Slot
Memory Slot is a terminal node (no outputs) — it sends a single ComplexBuffer to a specific SlotBank slot, persisting it as a FLAC file under the active… - Spectral Roughness
Digital signals are mathematically smooth — every bin is exactly what the algorithm calculated. - Frame Hold
Frame Hold is sample-and-hold for the spectral domain. - Envelope Follower
Envelope Follower is K2K's source-of-modulation node — it watches an audio signal and produces a smoothed amplitude envelope that other nodes can read via the… - LFO Crossfade
This is a time-domain LFO crossfade — the simplest crossmorph operation in the category. - Distortion (Native)
Native Distortion is the heaviest of K2K's harmonic-distortion family — designed for full amp-style aggression rather than the gentler coloring of saturation… - Spectral Expander
A spectral expander pushes down quiet frequencies per frame, rather than pushing down quiet moments. - Extractors
X-ray vision for buffers. - Pitch Class Extractor
This node identifies and extracts every occurrence of a specific note (or chord) from the source — across all octaves. - Adaptive Notch
A regular notch filter sits at a fixed frequency. - Slice Memory Slot
Slice Memory Slot exports an entire SliceContainer to consecutive SlotBank slots in one shot — typically the back-end of a slicing/Collage workflow. - Spectral Dither
In its traditional form, dither is a tiny amount of noise added during bit-depth reduction to mask quantization distortion. - Spectral Smear
Spectral Smear is "motion blur for audio" — where motion blur in video averages adjacent video frames to convey movement, this averages adjacent spectral… - Spectral Magnitude Crossfade
This node crossfades A and B per-frequency, with the per-frequency blend driven by an LFO. - Spectral Gate
Spectral gating reduces noise band-by-band rather than time-by-time. - Temporal Envelope Extractor
This node extracts the amplitude envelope of each frequency band — a smoothed, slow-moving version of the per-bin level over time. - Filter
Sculpting the spectrum. - Spectral Erosion
Spectral Erosion is named for the visual analogy: like rocks worn smooth by water or paint flaking off an old wall, this node "wears away" at the spectrum… - Spectral Echo
Spectral Echo generates a fixed number of decaying repeats at equal time intervals — closer to a tape echo or simple delay-line effect, but operating… - Multi-Band Crossfade
Standard crossfading just mixes two signals proportionally. - Spectral Ducker — Per-frequency-band sidechain ducking
Ducking pulls one signal's level down in response to another. - Silence Extractor
Silence Extractor finds time regions where the input is below threshold and outputs them as a separate stream. - Masks
Stencils for the spectrum. - Spectral Stutter
Spectral Stutter is rhythmic capture-and-replay in the spectral domain. - Spectral Vocoder
A vocoder takes the spectral envelope (the frequency-by-frequency amplitude shape) of one signal (the modulator) and applies it to another (the carrier). - Spectral Limiter — Per-frequency-band brickwall limiter
A spectral limiter clamps peaks per frequency band rather than across the whole signal. - Spectral Peak Extractor
This node finds the loudest peaks in the spectrum — typically the resonances and overtones that define a sound's character. - Modulation
Movement and motion. - Time Quantize
Time Quantize is a creative spectral-domain quantizer with three strategies. - Spectral Convolution
This is not the same as time-domain impulse-response convolution (the kind used for reverb impulses). - Spectral Transient Shaper
Most transient shapers are broadband: they detect transients across the whole signal and boost or cut them globally. - Formant Extractor
Formants are the resonant frequencies of the vocal tract — the peaks in a vocal spectrum that distinguish "ah" from "ee" from "oh" without changing pitch. - Neural
AI-assisted prep, 100% local. - Spectral Freeze Stutter
This node combines two ideas: freeze (spectral hold of a single moment, like a held capture) and stutter (rhythmic repetition triggered by an LFO). - Spectral Gating
Cross-spectral gating uses one signal's spectrum to control another's. - Spectral Delay
A spectral delay applies a different delay time per frequency bin — unlike a normal delay where all frequencies arrive at the echo together, a spectral delay… - Pitch
Re-tuning, re-voicing, harmonising. - Grain Cloud
Grain Cloud is K2K's flagship granular synthesis node — the source's audio is chopped into short windowed grains and re-fired into a continuous cloud, with… - Restoration
Damage repair. - Paulstretch
Paulstretch is a specific algorithm (named after its creator Nasca Octavian Paul) designed for extreme time-stretching. - Reverb
The shape of a room, captured in code. - Slicing
A butcher's block for sound, plus the bridge to the Player. - Spatial
Where the sound sits. - Subgraph I/O
Reusable processing blocks. - Texture
Surface treatment. - Time
Stretching, freezing, scattering. - Nodes
Reference for all 103 nodes in the k2k Editor — spectral analysis, distortion, dynamics, filter, time, texture, extractors, masks, and more. - Utility
The plumbing.