WARM / documentation

KERN WARM / user manual

version 1.4.2 / harmonic saturation / $29 / no iLok

what WARM does

WARM adds harmonic saturation to your audio: the subtle richness that makes recordings feel alive. it models three analog saturation circuits: tape, tube, and transformer. each has a genuinely different harmonic signature because each uses a different waveshaping nonlinearity.

unlike generic distortion plugins, WARM uses Chebyshev polynomials to control each harmonic independently. the result is musical saturation where you control the character, not just the amount.

use it on: vocals, drums, bass, synths, mix bus, anywhere you want analog warmth without the noise floor.

controls

WARM has 4 knobs, 4 draggable EQ nodes, a character mode selector, and an AUTO loudness matching toggle in the mode bar.

knobs

control range default what it does
DRIVE 2–24 dB 4 dB how hard the signal hits the saturation circuit. higher = more harmonics, more color.
TONE -100% to +100% 0% tilt EQ around 1 kHz. negative = darker. positive = brighter. opposing shelves keep energy balanced.
MIX 0–100% 100% wet/dry blend. use 30–70% for parallel saturation.
BODY 0–100% 50% low-mid emphasis. adds spectral shaping and a proportional drive boost into the waveshaper for audibly thicker low-mids.

toggle buttons

button what it does
DELTA hear what WARM is adding. output = wet - dry. you should hear only harmonics, not the original signal.
ODD suppresses even harmonics (h2, h4, h6). useful for a cleaner, more transparent saturation. most noticeable on Tape character.

character selector

character sound
TAPE symmetric tanh saturation. warm, odd-harmonic dominant (h3, h5, h7). gentle HF rolloff at 12 kHz. classic analog warmth.
TUBE bias-shifted asymmetric clipping. strong 2nd harmonic (h2 > h3 by ~6 dB). presence boost at 3 kHz. rich, musical distortion.
XFMR quadratic asymmetry. deep even-harmonic richness (h2 > h3 by ~27 dB). low-frequency thickening at 150 Hz. transformer weight.

switching characters during playback is click-free. WARM crossfades between characters over ~10ms.

character deep dive

the three characters aren't just EQ variations. each uses a fundamentally different waveshaping nonlinearity that generates a distinct harmonic profile.

tape

uses symmetric tanh(x), the classic analog tape saturation curve. because it's symmetric, it generates only odd harmonics (3rd, 5th, 7th). this gives a warm, rounded quality without adding brightness. the post-processing stage adds a gentle low-pass at 12 kHz to simulate tape head loss.

tube

uses a bias-shifted sigmoid: tanh(x + 0.35) - tanh(0.35). the bias shift breaks the symmetry, making the positive half-cycle clip differently from the negative half. this naturally generates even harmonics. the 2nd harmonic sits about 6 dB above the 3rd. a 3 kHz presence boost adds the "tube forward" quality. this is the richest, most musical character.

transformer

uses tanh(x) + 0.15 * t * t, a quadratic term that adds pure even-harmonic asymmetry. the 2nd harmonic dominates at ~27 dB above the 3rd. combined with a 150 Hz low shelf boost, this gives weight and body. the transformer "iron" sound. best on bass, drums, and mix bus.

key insight: all three characters process through the same Chebyshev polynomial stage, but the soft clipper before it determines which harmonics can exist. symmetric clipping = odd harmonics only. asymmetric clipping = even harmonics unlocked.

spectral display

the real-time spectral display shows:

  • gold curve: your signal's frequency spectrum after saturation
  • EQ nodes: 4 draggable nodes that control spectral pre-gain per frequency region
  • range handles: two draggable handles restrict saturation to a specific frequency range using a Linkwitz-Riley 4th-order crossover. frequencies outside the range pass through unprocessed.

AUTO loudness matching

the AUTO toggle in the mode bar enables K-weighted loudness compensation (ITU-R BS.1770). it automatically adjusts the output level to match the input, so your A/B comparison is fair. you hear the saturation character, not the volume difference.

EQ nodes

  • drag horizontally: move the node's center frequency
  • drag vertically: adjust pre-gain for that frequency region
  • mouse wheel on node: adjust Q (bandwidth)
  • shift + drag: fine adjustment
  • double-click: toggle node on/off
  • right-click: choose channel routing and shape (bell or shelf for bands 0 and 3)

shelf mode (bands 0 and 3)

the outermost EQ nodes (band 0 and band 3) can switch from parametric bell to shelving. right-click the node and choose "shelf" under the shape section. band 0 becomes a low shelf (boosts/cuts saturation below its frequency). band 3 becomes a high shelf (boosts/cuts above). the Q control adjusts the shelf transition steepness.

shelf mode

hover over any node to see inline controls. click the enable dot (left of node) to toggle it on/off. for bands 0 and 3, click the type badge to cycle between BELL, LS, and HS. low shelf on band 0 shapes everything below, high shelf on band 3 shapes everything above. double-click the label text to type exact values (e.g. "2.5k +3.0 dB Q 0.7"). right-click any band for the full menu as a fallback.

presets

WARM ships with 34 factory presets organized by character and use case.

tape presets

presetuse case
Tape Gentlesubtle analog warmth
Tape Vocalvocal chain saturation
Tape Drum Busdrum bus glue
Tape Hotdriven tape, think Studer pushed hard

tube presets

presetuse case
Tube Warmclassic tube warmth with 2nd harmonic richness
Tube Vocaltube mic pre character on vocals
Tube Crunchdriven tube for guitars and synths
Tube Bassbass fattening with tube harmonics

transformer presets

presetuse case
XFMR Subtlegentle transformer color
XFMR Bassbass weight and body
XFMR Mix Busmix bus iron. console-style saturation
XFMR Heavyheavy transformer saturation

browsing

  • use < > arrows in the header to browse presets
  • the preset name is displayed between the arrows
  • A/B button: compare two different settings instantly

how it works

WARM uses a 5-stage processing pipeline. no neural networks. no impulse responses. pure mathematics.

1

spectral pre-gain

STFT analysis splits the signal into frequency bins. the 4 EQ nodes let you boost or cut specific frequency regions before they hit the waveshaper, shaping what gets saturated.

2

drive computation

maps the DRIVE knob to a linear gain factor. an envelope follower modulates this with the input level. louder signals push the circuit harder, like real analog.

3

waveshaping (adaptive oversampling)

the signal is oversampled 2x and processed through the per-character soft clipper followed by 7th-order Chebyshev polynomial evaluation with 2nd-order antiderivative anti-aliasing (ADAA). at sample rates above 96 kHz, oversampling is bypassed (ADAA alone provides sufficient suppression). this achieves ~52 dB alias rejection at lower CPU cost than traditional oversampling.

4

post-processing

DC blocking, HF compensation for oversampler rolloff, character-specific tonal shaping, and the TONE tilt EQ. all parameters are smoothed to prevent zipper noise.

5

K-weighted auto-compensation

loudness is matched between wet and dry using K-weighted RMS (ITU-R BS.1770). the saturated output never sounds louder. you hear the character, not the volume boost.

result: harmonics are added. loudness is matched. character is real.

technical specifications

specvalue
formatsVST3, AU (AUv3), standalone
platformmacOS (Apple Silicon native)
sample rates44.1 – 192 kHz
latency~93 ms at 44.1 kHz (4096 samples, STFT stage)
CPU target< 3% at 44.1 kHz, 512-sample buffer (macOS with hardware-accelerated FFT)
waveshaping order7th-order Chebyshev polynomials
anti-aliasing2nd-order ADAA + 2x oversampling (≤96 kHz), ADAA only (>96 kHz)
characters3 (tape, tube, transformer)
harmonic control7 independent coefficients per character
auto-compensationK-weighted RMS (ITU-R BS.1770)
presets34 factory presets
DRMnone. no iLok. no account. no activation.

installation

  1. download the installer from kernaudio.io
  2. copy KERN WARM.vst3 to ~/Library/Audio/Plug-Ins/VST3/
  3. copy KERN WARM.component to ~/Library/Audio/Plug-Ins/Components/
  4. open your DAW, scan for new plugins
  5. find "KERN WARM" under manufacturer: "KERN Audio"

no activation required. no account needed. just install and use.

quick start recipes

"i want analog warmth on my vocal"

  1. select TUBE character
  2. set DRIVE to 6–8 dB
  3. keep MIX at 50–70% for parallel saturation
  4. the 2nd harmonic adds body without harshness

"my drums need more weight"

  1. select XFMR character
  2. DRIVE at 8–12 dB
  3. the low-frequency thickening at 150 Hz adds weight
  4. use DELTA to verify you're adding harmonics, not distortion

"i want subtle tape warmth on the mix bus"

  1. select TAPE character
  2. DRIVE at 3–5 dB (subtle)
  3. MIX at 40–60%
  4. TONE slightly negative for a darker, vintage feel

"my bass needs tube saturation"

  1. select TUBE character
  2. DRIVE at 10–14 dB
  3. use EQ nodes to boost the low-mid region (100–400 Hz) before saturation
  4. the even harmonics fill out the bass without muddying the low end

tips

  • DELTA reveals everything. toggle it to hear only the harmonics WARM is adding. if you hear the original signal, something's wrong.
  • TUBE for vocals, XFMR for bass. tube's 2nd harmonic adds musical richness. transformer's deep even harmonics add weight and body.
  • TAPE for everything else. symmetric saturation is the safest. warm without changing the harmonic balance.
  • parallel saturation works. MIX at 30–60% lets you add color without overdriving the signal.
  • ODD toggle for cleaner saturation. suppresses even harmonics when you want warmth without changing the harmonic balance.
  • auto-compensation means honest comparisons. A/B with bypass. the volume is matched, so you hear character, not loudness.
  • spectral pre-gain is powerful. use the EQ nodes to target specific frequencies for saturation. boost the region you want colored.

troubleshooting

problemsolution
"all three characters sound the same"increase DRIVE above 6 dB. at very low drive, all three converge to nearly linear. the differences are most audible at moderate to high drive.
"it sounds harsh"reduce DRIVE. try TONE negative. try TAPE character (gentlest). use MIX at 40–60% for parallel processing.
"i hear clicking when switching characters"this shouldn't happen. WARM crossfades over ~10ms. if you hear clicks, try restarting the plugin.
"DELTA sounds like the original signal"the signal is very clean and WARM isn't adding much. increase DRIVE to hear the harmonics in DELTA mode.
"CPU is too high"WARM targets <3% at 44.1 kHz on macOS (hardware-accelerated FFT). Windows CPU may be higher. at higher sample rates, oversampling is bypassed automatically.
"plugin doesn't appear in DAW"rescan plugins in your DAW. check that VST3/AU files exist in ~/Library/Audio/Plug-Ins/.

keyboard / mouse reference

actioncontrol
adjust knobclick + drag vertically
fine adjust knobshift + drag
reset knob to defaultdouble-click knob
move EQ node frequencydrag horizontally
adjust EQ node gaindrag vertically
adjust EQ node Qmouse wheel on node
fine adjust EQ nodeshift + drag
reset EQ nodedouble-click node
browse presetsclick < > arrows
toggle A/B comparisonclick A/B button
toggle delta modeclick DELTA button
toggle ODD modeclick ODD button
switch characterclick TAPE / TUBE / XFMR pills

version history

v1.4.2 (april 7, 2026)

  • refreshed visual identity: cabinet grotesk typeface, warm-tinted neutrals, redesigned arc knobs, background grain texture, spectral glow
  • editable EQ values: double-click any node label to type exact frequency, gain, and Q
  • improved inline controls: hover zones expanded, controls no longer disappear when moving toward them
  • animated toggle button glow on ODD and DELTA buttons
  • styled popup menus (preset browser, EQ routing, display options)
  • smoother CPU meter display
  • added stereo bus layout validation for broader DAW compatibility

v1.4.1 (april 2026)

  • band limiting: LR4 crossover restricts saturation to a draggable frequency range
  • BODY knob fix: now adds proportional drive boost for audible low-mid emphasis
  • AUTO loudness matching: K-weighted compensation (ITU-R BS.1770) for fair A/B comparison
  • redesigned EQ interaction: hover for inline enable dot and type badge (BELL/LS/HS), double-click to toggle
  • soft ADAA blending eliminates crackle at signal zero crossings
  • per-sample drive smoothing removes zipper artifacts
  • endpoint smoothing extended to all three characters
  • delta mode now correctly excludes bypassed frequency bands
  • warmup HF cap reduces hiss at high drive
  • 102 automated tests

v1.3.1 (march 2026)

  • fixed: GUI size persistence across sessions
  • fixed: bypass click artifact in Cubase and similar hosts
  • added: double-click outer EQ nodes for bell/shelf toggle
  • added: shelf mode in Cassette Glow, Master Tape, Vocal Silk, Sub Tape presets
  • fixed: delta signal silent at Drive=0%
  • fixed: delta, bypass, and stereo mode persist across preset changes

v1.2.1 (march 2026)

  • shelving EQ option: bands 0 and 3 can switch from parametric bell to low/high shelf via right-click menu
  • spectral display +12 dB grid line and label
  • 83 automated tests (1,634 assertions)

v1.2.0 (march 2026)

  • Baker ADAA (antiderivative anti-aliasing). 2nd-order ADAA using Baker's closed-form Chebyshev antiderivatives replaces 4x oversampling with 2x oversampling + ADAA. ~52 dB alias rejection at lower CPU cost.
  • 79 automated tests (1,634 assertions)

v1.1.0 (february 2026)

  • signal-dependent dynamic nonlinearity. Chebyshev coefficients modulated by an envelope follower that simulates analog circuit warmup. each character has distinct warmup timing: tape (slow magnetization), tube (medium bias shift), transformer (fast core saturation).
  • transfer function endpoint smoothing. reduces Chebyshev T7 oscillation at domain boundaries for cleaner tape saturation at high drive.
  • sample-rate-adaptive oversampling. 2x at ≤96 kHz, bypass at >96 kHz. ~50% CPU savings at high sample rates.
  • Apple Accelerate vectorization. vDSP-accelerated peak detection, RMS measurement, drive scaling, and mix blending on macOS.
  • block-processed IIR filters. K-weight, HF comp, tonal shaping, and tone EQ now use juce::dsp::AudioBlock for improved efficiency.
  • 63 automated tests (418 assertions)

v1.0.0 (february 2026)

  • 5-stage processing pipeline (STFT pre-gain, drive computer, Chebyshev waveshaper, post-processing, auto-compensation)
  • 3 saturation characters with per-character asymmetric soft clippers
  • 7th-order Chebyshev polynomial waveshaping via Clenshaw recurrence
  • 4x oversampling (half-band polyphase IIR)
  • program-dependent drive modulation (envelope follower)
  • K-weighted auto-compensation (ITU-R BS.1770)
  • HF compensation for oversampler rolloff
  • click-free character crossfade (~10ms)
  • zipper-free parameter smoothing (drive, tone, mix)
  • real-time spectral display with 4 EQ nodes
  • 34 factory presets
  • 48 automated tests (351 assertions)

design & development: Jonas Rosbech. algorithm based on published research by Giampiccolo (DAFx 2023), La Pastina & D'Angelo (DAFx 2022), Chowdhury (DAFx 2020), Parker (DAFx 2016), Temme et al. (AES 2013), Enderby & Stables (DAFx 2017), ITU-R BS.1770-5.