Tone.Signal
↳ EXTENDS Tone.ParamA signal is an audio-rate value. Tone.Signal is a core component of the library. Unlike a number, Signals can be scheduled with sample-level accuracy. Tone.Signal has all of the methods available to native Web Audio AudioParam as well as additional conveniences. Read more about working with signals here.
CONSTRUCTOR
new Tone.Signal ( [Initial value of the signal. If an AudioParam is passed in, that parameter will be wrapped and controlled by the Signal.
unit The units the signal is in.
DEFAULTS
EXAMPLE
- numberOfOutputs
- channelInterpretation
- channelCount
- context
- channelCountMode
- numberOfInputs
- value
- convert
- units
- disconnect
- dispose
- [undefined]
- getValueAtTime
- connect
- [undefined]
- toMaster
- connect
- cancelAndHoldAtTime
- exponentialRampTo
- exponentialRampToValueAtTime
- cancelScheduledValues
- linearRampTo
- linearRampToValueAtTime
- rampTo
- setRampPoint
- setTargetAtTime
- setValueAtTime
- setValueCurveAtTime
- targetRampTo
- exponentialApproachValueAtTime
Members
.numberOfOutputs
↝ Number READONLY #The number of outputs coming out of the AudioNode.
.channelInterpretation
↝ String READONLY #channelInterpretation determines how individual channels will be treated when up-mixing and down-mixing connections to any inputs to the node. The default value is “speakers”.
.channelCount
↝ Number READONLY #channelCount is the number of channels used when up-mixing and down-mixing connections to any inputs to the node. The default value is 2 except for specific nodes where its value is specially determined.
.context
↝ Tone.Context READONLY #Get the audio context belonging to this instance.
.channelCountMode
↝ String READONLY #channelCountMode determines how channels will be counted when up-mixing and down-mixing connections to any inputs to the node. The default value is “max”. This attribute has no effect for nodes with no inputs.
.numberOfInputs
↝ Number READONLY #The number of inputs feeding into the AudioNode. For source nodes, this will be 0.
Methods
.disconnect ( )
#this
Disconnect from the given node or all nodes if no param is given.
.getValueAtTime ( )
#Return the current signal value at the given time.
.connect ( )
#The output number to connect from.
The input number to connect to.
this
When signals connect to other signals or AudioParams, they take over the output value of that signal or AudioParam. For all other nodes, the behavior is the same as a default connect
.
.toMaster ( )
#this
Connect ‘this’ to the master output. Shorthand for this.connect(Tone.Master)
EXAMPLE
.connect ( )
#optionally which output to connect from
optionally which input to connect to
this
connect the output of a ToneNode to an AudioParam, AudioNode, or ToneNode
.cancelAndHoldAtTime ( )
#this
This is similar to cancelScheduledValues except it holds the automated value at time until the next automated event.
.exponentialRampTo ( )
#The value to ramp to.
the time that it takes the value to ramp from it’s current value
When the ramp should start.
this
Schedules an exponential continuous change in parameter value from the current time and current value to the given value over the duration of the rampTime.
EXAMPLE
.exponentialRampToValueAtTime ( )
#Schedules an exponential continuous change in parameter value from the previous scheduled parameter value to the given value.
.cancelScheduledValues ( )
#this
Cancels all scheduled parameter changes with times greater than or equal to startTime.
.linearRampTo ( )
#The value to ramp to.
the time that it takes the value to ramp from it’s current value
When the ramp should start.
this
Schedules an linear continuous change in parameter value from the current time and current value to the given value over the duration of the rampTime.
EXAMPLE
.linearRampToValueAtTime ( )
#Schedules a linear continuous change in parameter value from the previous scheduled parameter value to the given value.
.rampTo ( )
#The time that it takes the value to ramp from it’s current value
When the ramp should start.
this
Ramps to the given value over the duration of the rampTime. Automatically selects the best ramp type (exponential or linear) depending on the units
of the signal
EXAMPLE
EXAMPLE
.setRampPoint ( )
#(Optionally) pass the now value in.
this
Creates a schedule point with the current value at the current time. This is useful for creating an automation anchor point in order to schedule changes from the current value.
.setTargetAtTime ( )
#Start exponentially approaching the target value at the given time with a rate having the given time constant.
.setValueAtTime ( )
#The value to set the signal.
The time when the change should occur.
this
Schedules a parameter value change at the given time.
EXAMPLE
.setValueCurveAtTime ( )
#If the values in the curve should be scaled by some value
this
Sets an array of arbitrary parameter values starting at the given time for the given duration.
.targetRampTo ( )
#The value to ramp to.
the time that it takes the value to ramp from it’s current value
When the ramp should start.
this
Start exponentially approaching the target value at the given time. Since it is an exponential approach it will continue approaching after the ramp duration. The rampTime is the time that it takes to reach over 99% of the way towards the value.
EXAMPLE
.exponentialApproachValueAtTime ( )
#The value to ramp to.
When the ramp should start.
the time that it takes the value to ramp from it’s current value
this
Start exponentially approaching the target value at the given time. Since it is an exponential approach it will continue approaching after the ramp duration. The rampTime is the time that it takes to reach over 99% of the way towards the value. This methods is similar to setTargetAtTime except the third argument is a time instead of a ‘timeConstant’