v0.1Latest

Oscillator

Oscillator

Audio-rate oscillator for pitched tones or raw waveform sources, with sine, saw, square, and triangle shapes. Uses anti-aliased generation where appropriate.

Oscillator node screenshot

Inputs

Pitch

  • ID: pitch
  • Kind: control
  • Rate: control
  • Coercion: Implicit
  • Description: Oscillator pitch - accepts MIDI note, control CV, or plain number

Phase

  • ID: phase01
  • Kind: control
  • Rate: control
  • Unit: phase01
  • Range: 0 to 1 phase01
  • Coercion: Implicit
  • Description: Phase offset (0-1 = 0deg-360deg)
  • Default: 0

Sync

  • ID: sync
  • Kind: trigger
  • Rate: event
  • Coercion: Implicit
  • Description: Hard sync: resets phase on trigger

FM

  • ID: fmHz
  • Kind: control
  • Rate: control
  • Unit: Hz
  • Range: -20000 to 20000 Hz
  • Coercion: Implicit
  • Description: Linear FM input in Hz
  • Default: 0

Pulse Width

  • ID: pulseWidth
  • Kind: control
  • Rate: control
  • Unit: phase01
  • Range: 0.01 to 0.99 phase01
  • Coercion: Implicit
  • Description: Duty cycle for square wave
  • Default: 0.5

Unison Voices

  • ID: unisonVoices
  • Kind: control
  • Rate: control
  • Unit: count
  • Range: 1 to 8 count
  • Coercion: Implicit
  • Default: 1

Unison Detune

  • ID: unisonDetuneCents
  • Kind: control
  • Rate: control
  • Unit: cents
  • Range: 0 to 50 cents
  • Coercion: Implicit
  • Default: 0

Unison Spread

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

Detune

  • ID: detuneCents
  • Kind: control
  • Rate: control
  • Unit: cents
  • Range: -100 to 100 cents
  • Coercion: Implicit
  • Description: Fine-tune in cents (+/-100 = +/-1 semitone)
  • Default: 0

Outputs

Signal

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

Parameters

Waveform

  • ID: waveform
  • Type: enum
  • Control: buttons
  • Range or Options: Sine (sine), Saw (saw), Square (square), Triangle (triangle)
  • Default: Saw (saw)

Pitch

  • ID: pitch
  • Type: float
  • Control: slider
  • Range or Options: 0 to 127 midiNote, step 1
  • Default: 60
  • Description: Base MIDI pitch (0–127, 60 = middle C). Overridden when pitch port is connected.

Pulse Width

  • ID: pulseWidth
  • Type: float
  • Control: slider
  • Range or Options: 0.01 to 0.99 phase01, step 0.01
  • Default: 0.5
  • Description: Duty cycle for square wave

Detune (Ct)

  • ID: detuneCents
  • Type: float
  • Control: slider
  • Range or Options: -100 to 100 cents, step 0.1
  • Default: 0
  • Description: Fine-tune in cents (+/-100 = +/-1 semitone)

Amplitude

  • ID: amp
  • Type: float
  • Control: slider
  • Range or Options: 0 to 1 gain01, step 0.01
  • Default: 0.5

Unison Voices

  • ID: unisonVoices
  • Type: int
  • Control: slider
  • Range or Options: 1 to 8 count, step 1
  • Default: 1

Unison Detune

  • ID: unisonDetuneCents
  • Type: float
  • Control: slider
  • Range or Options: 0 to 50 cents, step 0.1
  • Default: 0

Unison Spread

  • ID: unisonSpread01
  • Type: float
  • Control: slider
  • Range or Options: 0 to 1 phase01, step 0.01
  • Default: 0

Notes

  • Canonical ID: osc.basic
  • Category: generators
  • 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.