spectral-analysis
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
- 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. - HPSS Extractor
HPSS (Harmonic-Percussive Source Separation) is a classic audio decomposition algorithm that splits a signal into three streams. - Unified Mask
Unified Mask is the master mask node — combines all three selection dimensions (frequency, amplitude, time) into one. - Phase Playground
Phase Playground is K2K's creative phase laboratory — six discrete operators ranging from coherence repair (Smooth, Lock) through decorrelation (Randomize) to… - 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. - 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… - 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… - 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. - 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. - Timbre Morph
Timbre Morph is K2K's most distinctive crossmorph operation. - Transient Extractor
Every K2K extractor produces two outputs: extracted (the part you asked for) and rejected (everything else). - Frequency Band Mask
Frequency Band Mask selects spectral bins by frequency — keeps everything between low_freq and high_freq, drops the rest. - 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. - 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… - 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… - 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. - Spectral Morph
This node decomposes both inputs into harmonic, percussive, and residual streams (using HPSS — see HPSS Extractor for the algorithm), blends each stream… - 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… - 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. - LFO Crossfade
This is a time-domain LFO crossfade — the simplest crossmorph operation in the category. - 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. - 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. - 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. - 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. - 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 Peak Extractor
This node finds the loudest peaks in the spectrum — typically the resonances and overtones that define a sound's character. - 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). - 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. - 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). - Phase
The invisible dimension. - 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… - 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… - Paulstretch
Paulstretch is a specific algorithm (named after its creator Nasca Octavian Paul) designed for extreme time-stretching. - 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.