PeriodicWave()

The PeriodicWave() constructor of the Web Audio API creates a new PeriodicWave object instance.

Syntax

var myWave = 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 the PeriodicWave 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 the real parameter of BaseAudioContext.createPeriodicWave).
  • imag: A Float32Array containing the sine terms that you want to use to form the wave (equivalent to the imag parameter of BaseAudioContext.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 of channelCountMode.
  • 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". (See AudioNode.channelCountMode for more information including default values.)

Return value

A new PeriodicWave object instance.

Example

var real = new Float32Array(2);
var imag = new Float32Array(2);
var ac = new AudioContext();

real[0] = 0;
imag[0] = 0;
real[1] = 1;
imag[1] = 0;

var options = {
  real : real,
  imag : imag,
  disableNormalization : false
}

var wave = new PeriodicWave(ac, options);

Specifications

Specification
Web Audio API
# dom-periodicwave-periodicwave

Browser compatibility

BCD tables only load in the browser