v0.1Latest

Modal Resonator

Modal Resonator

A tuned modal-synthesis body that resonates like a physical string, bar, plate, or tube when excited. Its bank of tuned modes gives struck and plucked material a natural, pitched ring, with mode tuning and damping shaping the body character and decay. Excite it with an impulse, noise burst, or audio input to model acoustic resonance and percussion.

Modal Resonator node screenshot

Inputs

Audio In

  • ID: audio
  • Kind: audio
  • Rate: audio
  • Audio Channel Layout: stereo
  • Unit: normalized
  • Range: -1 to 1 normalized
  • Coercion: Implicit
  • Description: Audio signal input
  • Default: 0

Pitch

  • ID: frequencyHz
  • Kind: control
  • Rate: control
  • Unit: Hz
  • Range: 0.01 to 20000 Hz
  • Coercion: Implicit
  • Description: Fundamental pitch for the modal body
  • Default: 440

Decay

  • ID: decaySec
  • Kind: control
  • Rate: control
  • Unit: s
  • Range: 0.05 to 12 s
  • Coercion: Implicit
  • Default: 2.2

Damping

  • ID: damping01
  • Kind: control
  • Rate: control
  • Unit: phase01
  • Range: 0 to 1 phase01
  • Coercion: Implicit
  • Default: 0.25

Brightness

  • ID: brightness01
  • Kind: control
  • Rate: control
  • Unit: phase01
  • Range: 0 to 1 phase01
  • Coercion: Implicit
  • Default: 0.55

Inharmonicity

  • ID: inharmonicity01
  • Kind: control
  • Rate: control
  • Unit: phase01
  • Range: 0 to 1 phase01
  • Coercion: Implicit
  • Default: 0.18

Mix

  • ID: mix
  • Kind: control
  • Rate: control
  • Unit: mix01
  • Range: 0 to 1 mix01
  • Coercion: Implicit
  • Description: Live dry/wet mix control
  • Default: 0.5

Outputs

Audio Out

  • ID: audio
  • Kind: audio
  • Rate: audio
  • Audio Channel Layout: stereo
  • Unit: normalized
  • Range: -1 to 1 normalized
  • Coercion: Implicit
  • Description: Audio signal output

Parameters

Model

  • ID: model
  • Type: enum
  • Control: buttons
  • Range or Options: String (string), Bar (bar), Plate (plate), Tube (tube)
  • Default: String (string)
  • Group: Body

Frequency

  • ID: frequencyHz
  • Type: float
  • Control: slider
  • Range or Options: 20 to 8000 Hz, step 1, log
  • Default: 440
  • Group: Body

Decay

  • ID: decaySec
  • Type: float
  • Control: slider
  • Range or Options: 0.05 to 12 s, step 0.01
  • Default: 2.2
  • Group: Body

Damping

  • ID: damping01
  • Type: float
  • Control: slider
  • Range or Options: 0 to 1 phase01, step 0.01
  • Default: 0.25
  • Group: Body

Brightness

  • ID: brightness01
  • Type: float
  • Control: slider
  • Range or Options: 0 to 1 phase01, step 0.01
  • Default: 0.55
  • Group: Body

Inharmonicity

  • ID: inharmonicity01
  • Type: float
  • Control: slider
  • Range or Options: 0 to 1 phase01, step 0.01
  • Default: 0.18
  • Group: Body

Mix

  • ID: mix
  • Type: float
  • Control: slider
  • Range or Options: 0 to 1 mix01, step 0.01
  • Default: 0.5
  • Group: Output

Level

  • ID: level
  • Type: float
  • Control: slider
  • Range or Options: 0 to 1 gain01, step 0.01
  • Default: 0.85
  • Group: Output

Notes

  • Canonical ID: phys.modalResonator
  • Category: effects
  • Runtime Surface: audio
  • Runtime Targets: audio-worklet
  • JUCE Early Access: Supported
  • Early Access Note: Native-supported in the plugin for the current catalog/runtime support contract.