Public beta

WEFT

An expressive spectral filter.

Draw cuts in the spectrum, bring out harmonics with notes and chords, or set the spectrum in motion.

Weft in action, with wavering support from Wow. Press play to hear the demo.

01 / EXPLORE

Start here

Try Weft on a drum loop, a textured synth or any sound with plenty of frequencies to work with. Draw a few cuts in the graph and listen to what comes through. Hold Shift as you draw for a softer brush.

To bring out a chord, raise Note Depth and click a few piano keys. Those notes pick out regions of the sound already playing. Try changing the notes while the loop repeats, or send MIDI into Weft and play them from a keyboard.

For another starting point, click Capture while audio plays, then click it again to keep that spectral shape. Draw over it, reshape it with Transform, or Flip its peaks into valleys.

With both Depth controls at 0 dB, a flat curve and Output at 0 dB, the audio passes through unchanged apart from processing latency. That gives you a useful starting point for hearing what each part adds.

02 / REFERENCE

Manual

Controls, settings and practical details.

Updating to 0.5

Check Motion Shape automation in existing projects. Cloud changes the normalized selector positions, and Sprinkle replaces Splash with a different sound. See the 0.5 compatibility notes before saving over an older project.

Reshape with spectral precision

Drag in the graph to set each frequency bin's gain. Hold Shift for a soft circular brush. The small selector at the top left changes the drawing range: 30, 60, 90 or 144 dB. At the bottom of the 144 dB view, −∞ means those bins are silent. Reset clears the curve without changing the other controls.

Click Transform, or hold Alt, to reshape the curve:

  • Drag the bottom edge vertically to change the depth of the cuts.
  • Drag either side vertically to tilt around 1 kHz.
  • Drag inside the graph horizontally to shift the curve up or down in frequency.

When you let go, the result becomes the new curve and the handles return to neutral. You can draw over it normally. Escape cancels the active drag and leaves Transform mode.

A transform can move parts of the curve outside the graph. Dashed red marks show where it continues. Those parts keep their shape, and another transform can bring them back. Values above 0 dB add no gain to the base curve. Values at or below -144 dB silence their bins.

Spectral motion

Start with Depth. At 0 dB, motion has no effect. Raise it to hear the selected shape move across the spectrum.

Drift moves broad, irregular shapes. Try Ripple or Saw for repeating patterns. Harmonic opens a comb of frequencies, Scan moves an opening and Notch moves a cut.

Sprinkle creates short spectral gestures around played, sustained or pinned notes and their harmonics. Without notes, it chooses pitches automatically. Cloud creates overlapping spectral windows. Notes guide their pitches; without notes, they appear across the spectrum. Direction changes how Cloud windows swell and fade.

For Sprinkle and Cloud, Rate controls activity and Size controls width. Size also lengthens Cloud windows. Both reveal sound already in the input. Try Note Depth at zero to hear them without note gating, and use the drawn curve to control the frequency range.

Use Free for a rate in hertz or Sync for beat divisions. Phase offsets the cycle, Size changes its width or spacing, and Direction selects forward, reverse or alternating movement. The fastest rates depend on Resolution.

Use notes to shape the spectrum

Each note in Weft opens a family of harmonic regions in the incoming audio. Their width follows musical intervals, while pitch bend, pressure and timbre reshape each note's contribution.

Musical pitches usually fall between the fixed frequency bins of an FFT. Weft compensates for that alignment so narrow note openings retain their strength across the keyboard. Resolution still determines how finely nearby frequencies can be separated.

Raise Note Depth, then click the piano keys to pin notes. Click an active key again to remove it, or drag across keys to add or remove several. The Reset beside the keys clears the pinned notes.

You can also route MIDI or note events into Weft while it processes audio. Play over a pinned chord, or use live notes alone. In a host with hybrid tracks, put Weft after the sound source. Otherwise, send a MIDI track to the track or plugin carrying the audio. The routing controls depend on your DAW.

Hold keeps the notes you are playing, plus any new notes that arrive. Turn it off to release them. Notes you pinned by hand stay. Notes still held on an external keyboard keep playing too. You can remove held notes by clicking their piano keys.

Depth
At 0 dB, Note Control is neutral. Raise it to lower the background around the notes and make their regions stand out.
Width
Sets the spread around each note, in cents.
Partials
Opens up to 24 harmonics per note. A value of 1 uses only the fundamental. For Sprinkle, this also sets the available harmonics, even without MIDI or at zero Note Depth. Each gesture usually selects one harmonic, occasionally two or three.
Partial Rolloff
Sets how much quieter the upper note regions become per octave. For Sprinkle, it makes higher harmonics less likely to be selected, without applying another rolloff gain.
Attack / Release
Control how note regions open and close. The displayed times include the selected Resolution's minimum response time. These controls also set each Sprinkle's onset and automatic decay after its peak, with or without notes and at zero Note Depth. Changes affect new Sprinkles.
Vel Sens
At 0%, all notes act at full strength. Raise it to follow velocity. Clicked notes use 50% velocity, so you can pin a quieter chord and play louder notes over it.

Capture, Flip and transfer curve files

Click Capture to average the incoming spectrum, then click it again to stop. Watch the preview build while audio plays. Weft sets the strongest captured region to 0 dB and uses the result as the new curve. Capture reads the input before Motion and Note Control, so their settings stay as they were.

A short capture gives you a snapshot. Leave it running through a phrase to capture more of the track. Escape discards an unfinished capture. Reset cancels it and clears the curve.

Flip turns peaks into valleys within the existing range. Flip twice to get back to the original. To make room for one track in another, capture the first track, Flip, then Copy. Paste the curve into Weft on the second track and adjust its depth with Transform. The cut stays fixed until you edit it.

The Curve menu has Copy, Paste, Save and Load. These transfer only the curve, leaving notes and other settings alone. Files use the .weftcurve extension. When you load one at a different sample rate, Weft keeps the cuts at the same frequencies. Stop Capture before using Transform, Flip, Paste or Load.

MTS-ESP tuning

Weft follows an active MTS-ESP host, such as Inton, automatically. Live, held and pinned notes follow tuning changes. Pitch bend and note expression work on top of that tuning.

The note ruler shows the active scale and spaces notes by their tuned frequencies. Without an active MTS master, Weft uses standard tuning. Install the MTS-ESP runtime supplied with your tuning software, then restart your DAW.

Expression and sustain

Pitch bend or per-note tuning moves a note and its partials. Pressure and per-note volume change its strength. Timbre or CC74 changes the partial rolloff for that note. Per-note pan moves a note's contribution between channels, and vibrato adds pitch movement. The Bend control sets the pitch-bend range.

Weft follows CLAP and VST3 note expression and MIDI/MPE channel expression whenever the host sends them. There is no MPE switch. A sustain pedal holds released notes on its own MIDI channel until the pedal comes up. It leaves pinned notes alone.

Resolution and output

Mode selects the FFT resolution, from Rough to Precise. Lower settings respond faster. Higher settings separate nearby frequencies more finely but add latency. Resolution cannot be automated.

Smooth blends neighbouring spectral bins and adds 30 ms of mask smoothing. It changes the sound. The Shift brush only changes how you draw.

Output sets the final level. The thin meter above it measures the outgoing audio and turns orange at 0 dBFS. It is not a limiter.

Undo and saved settings

The bent-arrow buttons undo and redo parameters, curve edits and pinned notes. A complete drag is one step, whether you move a slider, draw a stroke or drag across several keys.

Use Ctrl+Z to undo and Ctrl+Shift+Z to redo while Weft is focused. On macOS, use Cmd instead of Ctrl. When typing a number, these shortcuts edit the text.

Incoming MIDI, host automation, theme, zoom and graph range stay out of this history. Weft's local undo is separate from your DAW's project undo.

Your DAW saves the parameters, curve and pinned notes with the project. Duplicating the device copies them too.

Installation and display

Copy the formats you use into their matching folders, then rescan plugins in your DAW. Keep plugin bundles intact rather than copying the files inside them.

macOS~/Library/Audio/Plug-Ins/CLAP~/Library/Audio/Plug-Ins/VST3
WindowsC:\Program Files\Common Files\CLAPC:\Program Files\Common Files\VST3
Linux~/.clap~/.vst3

Click OIKO AUDIO in the title bar to choose a size from 50% to 200%. Drag the bottom-right corner to choose a size from 50% to 200% in 25% steps. Release to resize the window, or press Escape to cancel. The plug-in remembers your chosen size. The sun or moon button changes the theme.

Known issues

  • Changing Resolution clears the processing buffers and briefly interrupts the sound.
  • In REAPER on Linux, the CLAP editor may be blank on its first opening. Toggle REAPER's UI control off and back on.
  • Note events retain their timing within the audio block, but spectral changes take effect at the FFT frame rate. Resolution limits how quickly note regions can respond.
  • The beta builds are unsigned, and the macOS builds are not notarized.

03 / RELEASE NOTES

Release notes

0.5.0-beta.3

New instances open at the editor zoom you last chose. A saved project still reopens at the zoom it was saved with.

Parameters, automation mappings and saved state are unchanged from 0.5.0-beta.2. If you are updating from an earlier beta, check the Motion Shape automation notes under 0.5.0-beta.1.

0.5.0-beta.2

On Linux, the editor now opens at the right size on desktops that scale X11 apps, such as KDE Plasma at 200%. Before, the host window kept the unscaled size and cut off the enlarged editor. In VST3 hosts, the window can open small and then grow to fit.

Parameters, automation mappings and saved state are unchanged from 0.5.0-beta.1. If you are updating from an earlier beta, check the Motion Shape automation notes under 0.5.0-beta.1.

0.5.0-beta.1

Wow, Weft and Inton now share one release version. These plugins are still maturing; sound, controls and automation mappings may change between beta releases. Keep the previous plugin version and a backup of existing projects before updating.

Check Motion Shape automation

Cloud expands Motion Shape from seven choices to eight. Old VST3 automation points can now select a different shape. Host macros and controller mappings that store normalized values may also need adjustment.

Ripple, Harmonic, Drift
Old VST3 values still select the same shape.
Scan
The old VST3 value now selects Notch.
Notch
The old VST3 value now selects Saw.
Saw
The old VST3 value now selects Sprinkle.
Splash
The old VST3 value now selects Cloud.

Re-select the intended shape and update affected automation points or mappings. Check transitions between points too. Loading plug-in state cannot update automation stored by the host.

Saved integer selections and CLAP's plain parameter values retain their indices. The former Splash selection now chooses Sprinkle, which sounds different. Keep the previous version if you need the original Splash sound.

Changes

  • Sprinkle replaces Splash with repeatable spectral particles. Cloud adds overlapping windows with rounded or reverse-swell envelopes. Both work with live or pinned notes, and without notes.
  • Corner-drag resizing from 50% to 200%, with the chosen size restored when reopening the editor, and updated host integration.

Per-note expression and MPE support continue to handle tuning, pressure, gain, pan, brightness and vibrato.

Known issues

  • Changing Resolution clears the processing buffers and briefly interrupts the sound.
  • In REAPER on Linux, the CLAP editor may be blank on its first opening. Toggle REAPER's UI control off and back on.
  • Note events retain their timing within the audio block, but spectral changes take effect at the FFT frame rate. Resolution limits how quickly note regions can respond.
  • The beta builds are unsigned, and the macOS builds are not notarized.

0.4.0-beta.1

  • Added per-note pitch, gain, pan, timbre and pressure through CLAP and VST3.
  • Expression changes now follow held notes. Timbre adjusts harmonic rolloff; pressure controls how far a note opens the spectrum.
  • Added support for MPE zones and controller-supplied pitch-bend ranges.
  • Fixed expression routing for overlapping notes of the same pitch.
  • Updated the interface and undo handling.

Shared fixes

  • CLAP automation events now retain their position within the audio block.
  • State loading checks incoming data as it arrives, avoiding large allocations based on an invalid size.

0.1.1-beta4

  • Follows tuning from MTS-ESP hosts such as Inton, including changes to held and pinned notes.
  • Shows the active scale on the note ruler, with notes spaced by their tuned frequencies.
  • Adds three-bar and dotted-whole sync rates for spectral motion.

CLAP and VST3 for Linux, Windows and universal macOS.

0.1.1-beta3

  • Capture the spectral contour of incoming audio.
  • Transform the curve using depth, tilt and frequency position controls.
  • Flip curves to turn peaks into valleys and carve out space.
  • Save, load, copy and paste curves.
  • Hold Shift to draw with a soft circular brush.
  • Added undo and redo for parameters, curves and pinned notes. Ctrl/Cmd+Z and Ctrl/Cmd+Shift+Z.
  • MIDI sustain pedal input now holds released notes.
  • Increased the graph range to −144 dB, where Weft fully mutes the affected bins.
  • Updated control defaults, cursor and transform hints, note highlights, output metering, and the manual.

CLAP and VST3 for Linux, Windows and universal macOS.

0.1.1-beta2

Improved macOS interface scaling and resizing.

0.1.1-beta1

First public beta: spectral drawing, pinned and incoming notes, note expression, spectral motion and five FFT resolutions. The original Freeze function has since been replaced by Capture.

Known limitations

Builds are unsigned; macOS builds are not notarized.