EZ Web Audio / Connectable
Interface: Connectable
Defined in: packages/core/src/interfaces/connectable.ts:10
Interface for audio sources with parameter control and routing.
Provides gain/pan control and audio parameter management via the fluent API. The update method accepts SoundControlType ('gain', 'pan', 'detune'). Oscillator overrides this to also accept 'frequency'.
Properties
audioSourceNode
audioSourceNode:
OscillatorNode|AudioBufferSourceNode
Defined in: packages/core/src/interfaces/connectable.ts:12
changeGainTo()
changeGainTo: (
value) =>this
Defined in: packages/core/src/interfaces/connectable.ts:14
Parameters
value
number
Returns
this
changePanTo()
changePanTo: (
value) =>this
Defined in: packages/core/src/interfaces/connectable.ts:13
Parameters
value
number
Returns
this
percentGain
percentGain:
number
Defined in: packages/core/src/interfaces/connectable.ts:11
update()
update: (
type) =>object
Defined in: packages/core/src/interfaces/connectable.ts:28
Update an audio parameter immediately: update(type).to(value).as(method).
Validation semantics (as of the R1#1 unification): 'gain' throws a ValidationError for negative values and warns on the console for values above 1; 'pan' warns for values outside [-1, 1] (the Web Audio API clamps these automatically, so it is not an error). This is the same validation changeGainTo()/changePanTo() apply — implementations route both through the same underlying check (see BaseParamController._update()) so update('gain').to(-1).as('ratio') and changeGainTo(-1) throw identically. 'detune' and 'frequency' (Oscillator only) are not range-validated.
Parameters
type
Returns
object
to()
to: (
value) =>object
Parameters
value
number
Returns
object
as()
as: (
method) =>void
Parameters
method
Returns
void