Envelope Follower

Track the amplitude and dynamics of a signal over time, with peak or RMS detection.

What it does

Envelope Follower tracks the level of a signal over time and outputs it as a smoothly moving value. Input can be audio, a number, or any wired value. Attack and Release set how fast the level rises and falls. The signal is also split into three bands, bass, mid and treble, around two crossover frequencies, so bass hits can drive one thing and high-end detail another.

Detection Mode sets how the level is measured. Peak follows instantaneous spikes and reads as snappy and percussive. RMS follows average power and reads as smoother, closer to perceived loudness.

When to use it

ParameterTypeDefault
audio_inOneOf([Number, Vec2, Vec3, Color, NumberArray, Vec2Array, Vec3Array, ColorArray])
modeString"Peak"
attackNumber10
releaseNumber100
low_crossoverNumber200
high_crossoverNumber3000

Gotchas

envelope_db carries the same broadband level in decibels, for a wider dynamic range than the 0–1 envelope output.

Switching Mode between Peak and RMS resets the follower's internal smoothing state. The two measure the signal too differently to carry over, so expect a brief re-settle after the switch.

Changing either crossover frequency reshapes the band split and resets the per-band envelopes (bass, mid, treble). Attack and Release retune the existing smoothing and never reset, so both are safe to animate live.

Worked example

  1. Add an Envelope Follower and wire an audio or signal source into Signal.

  2. Leave Mode on Peak for a punchy response, or switch to RMS for a smoother one.

  3. Lower Attack for a snappier rise, raise Release for a slower fade-out.

  4. Wire envelope into the parameter to react: scale, opacity, colour.

  5. For band-specific reactions, wire bass, mid or treble instead, and adjust the crossover frequencies to taste.

See also

Audio Analysis · Audio Mixer · Pitch Detect · Numbers, signals & audio