Reference / Nodes

Sound

Two nodes. soundLoader reads an audio file and publishes its live amplitude on a float port. soundModifier takes that signal and shapes it, band, attack, release, scale, into a usable control value.

Sound Loader

soundLoaderInput

Loads an audio file and outputs its current amplitude as a float. Drives FFT analysis used by downstream sound modifiers.

Outputs
PortTypeDefaultRangeNotes
soundfloat,,

Pick the file, play state, loop and volume on the inspector. The node performs an FFT internally so a chain of soundModifier nodes pointed at this loader can each tap a different frequency band off the same playback.

Free-running and timeline-synced playback modes are supported, same as videoPlayer, useful when you want audio to scrub with a master clock instead of running on its own.

Sound Modifier

soundModifierModifier

Takes a sound input, picks a frequency band, applies attack / decay envelopes and outputs a shaped float for any animatable port.

Inputs
PortTypeDefaultRangeNotes
soundfloat,,
Outputs
PortTypeDefaultRangeNotes
valuefloat,,

Inspector controls the band (full / bass / mids / highs), attack and decay times, output range, spikiness and smoothness. The node tracks its own envelope so kick drums punch and pads breathe, a single graph can hold one modifier per band, each driving a different port.

Wire the sound input directly to the sound output of a soundLoader. The modifier then reads the underlying FFT bands automatically, the float port is just the handshake.

Audio Input

audioInputInput

Live Core Audio capture from any input device, published as an amplitude float for downstream analyzers.

Outputs
PortTypeDefaultRangeNotes
soundfloat,,

Captures live audio from a selected input device, built-in mic, line-in, USB / Thunderbolt interfaces, or an aggregate device. The device is remembered by its UID, so opening a project on another machine resolves predictably. Multichannel inputs are summed to a single signal.

The inspector has a device picker, a gain slider, a dBFS level meter with a peak marker, and an optional passthrough toggle that routes the captured audio to the system output. Like soundLoader, it runs an FFT internally so any number of soundModifier / audioBands nodes can each tap a different band off the same live source.

Any node that emits live samples (this and soundLoader) is a valid upstream source , analyzers search for the nearest one automatically.

Audio Bands

audioBandsModifier

Splits an upstream audio source's spectrum into seven named frequency bands plus overall amplitude, each a smoothed 0–1 float.

Inputs
PortTypeDefaultRangeNotes
soundfloat,,Wire to a soundLoader / audioInput output.
Outputs
PortTypeDefaultRangeNotes
subBassfloat,0120–60 Hz.
bassfloat,0160–250 Hz.
lowMidfloat,01250–500 Hz.
midfloat,01500–2000 Hz.
highMidfloat,012–4 kHz.
highfloat,014–8 kHz.
brilliancefloat,018–20 kHz.
amplitudefloat,01Overall RMS, gained and clamped.

A 1024-point FFT sliced into eight outputs at once, each with its own attack / decay envelope and smoothing. This is the workhorse for audio-reactive patches: drive camera shake from bass, glitch from high, bloom from amplitude - all off a single source. Attack, decay, gain, smoothness and compression are inspector fields.

Beat Sync

beatSyncModifier

Detects beats in a float signal and emits a decaying pulse, beat phase, estimated BPM, and a per-frame onset trigger.

Inputs
PortTypeDefaultRangeNotes
signalfloat002Usually the bass output of an Audio Bands node.
Outputs
PortTypeDefaultRangeNotes
pulsefloat,01Decaying envelope that spikes to 1 on each beat.
phasefloat,01Sawtooth progress through the current beat.
bpmfloat,,Smoothed estimated tempo.
onsetfloat,,1 only on the frame a beat fires; use as a trigger.

Tracks the signal’s flux against an adaptive threshold to fire a beat, then estimates tempo from recent intervals. Use pulse for a kick that decays naturally, phase to drive cyclic motion in lockstep, and onset to trigger one-shots. With free-run on,phase keeps advancing at the estimated BPM even when the signal drops out. Sensitivity and the BPM range are inspector fields.