Humusbeta

Wave

Wave editor

A wavetable oscillator whose cycles are drawn, grown from a seed file or rolled at random.

Inlets
MIDI1
Outlets
Audio2

The display is the sound: draw on it, start from the sine, triangle, saw or square tile, or seed the table from any file. A table holds up to sixteen frames and Position morphs between the two nearest; Warp reshapes the cycle, Unison stacks detuned copies, and a sub sine, drive and a lowpass finish the voice. Playback is band-limited per frame, so high notes lose only the harmonics that cannot fit. It is an eight-voice MIDI instrument that follows the patch Tuning; cord a PianoRoll, DNA or Steps in and send the output to a Filter or a Fern.

The display

Drag on the wave to draw the frame nearest Position; the rest of a seeded table is untouched, so a grown wave can be retouched frame by frame. Random rolls a fresh spread of partials. Drop a file on the display or use Seed file: a wavetable file, one cycle of 2048 samples per frame as most synths share them, is read frame for frame, and a long one is thinned to sixteen frames that keep its first and last; a recording is chopped into up to sixteen frames, one cycle per slice; and any other file is read as a shape. + frame and - frame build a table by hand, and the strip under the display shows every frame with the current one lit; click a slice to jump to it. The same seed always grows the same table, saved with the patch.

Parameters

AttackHow long a note takes to open, in milliseconds.
ReleaseHow long it takes to fade after the key lifts.
SubA pure sine one octave below every voice, for weight without changing the drawn cycle. 0 is off.
UnisonHow many detuned copies each voice plays, 1 to 16. One is dead centre; more thicken and widen, and past eight the cost is in CPU rather than in sound.
DetuneHow far apart in pitch the unison copies sit.
WidthHow far the unison copies spread across the stereo field.
CutoffA lowpass over the summed voices. Parked at the top of its travel it leaves the path entirely.
ResoResonance of that lowpass.
DriveSaturation on the sum, before the filter, so Cutoff tames what it makes. 0 is clean.
WarpModeThe cycle shaper: Off, Sync bends the read faster within the period, Bend skews the phase ramp, Fold reflects the peaks back into range, PWM squeezes the duty.
WarpDepth of the warp. It is smoothed, so sweeping it never zippers, and the shaped result is drawn as a second trace over the base cycle.
PositionScans and morphs between the table's frames. Does nothing on a one-frame table.
SpectralMorphs by harmonic magnitude rather than by samples, so a partial that sits in opposite phase between two frames fades instead of cancelling mid-sweep.
PositionModHow far the amp envelope sweeps Position on its own, per voice, so a note travels through the table as it plays. 0 is off.
LevelOutput level.
BendRangeHow far the pitch wheel reaches at full travel, in semitones. Two is the common default; zero ignores the wheel.
TableThe table itself, saved with the patch. Random rolls it along with the shaping knobs, and undo brings back the wave you had.

Recipe

Evolving sample tableSeed file with a short vocal recording, Unison 3, Detune 0.25, Width 0.7, Cutoff 6000, Drive 0.2, Release 800. Cord a PianoRoll in and an LFO onto Position with a period of two bars so each note travels through the recording as it plays; switch Spectral on if the sweep dips or phases.