PeriodicWave: PeriodicWave() constructor
The PeriodicWave()
constructor of the Web Audio API creates a new
PeriodicWave
object instance.
Syntax
js
new PeriodicWave(context)
new PeriodicWave(context, options)
Parameters
context
-
A
BaseAudioContext
representing the audio context you want the node to be associated with. options
Optional-
A
PeriodicWaveOptions
dictionary object defining the properties you want thePeriodicWave
to have (It also inherits the options defined in the PeriodicWaveConstraints dictionary.):real
-
A
Float32Array
containing the cosine terms that you want to use to form the wave (equivalent to thereal
parameter ofBaseAudioContext.createPeriodicWave
). imag
-
A
Float32Array
containing the sine terms that you want to use to form the wave (equivalent to theimag
parameter ofBaseAudioContext.createPeriodicWave
). channelCount
-
Represents an integer used to determine how many channels are used when up-mixing and down-mixing connections to any inputs to the node. (See
AudioNode.channelCount
for more information.) Its usage and precise definition depend on the value ofchannelCountMode
. channelCountMode
-
Represents an enumerated value describing the way channels must be matched between the node's inputs and outputs. (See
AudioNode.channelCountMode
for more information including default values.) channelInterpretation
-
Represents an enumerated value describing the meaning of the channels. This interpretation will define how audio up-mixing and down-mixing will happen. The possible values are
"speakers"
or"discrete"
. (SeeAudioNode.channelCountMode
for more information including default values.)
Return value
A new PeriodicWave
object instance.
Examples
js
const real = new Float32Array(2);
const imag = new Float32Array(2);
const ac = new AudioContext();
real[0] = 0;
imag[0] = 0;
real[1] = 1;
imag[1] = 0;
const wave = new PeriodicWave(ac, {
real,
imag,
disableNormalization: false,
});
Specifications
Specification |
---|
Web Audio API # dom-periodicwave-periodicwave |
Browser compatibility
BCD tables only load in the browser