We're looking for a person or people to help audit MDN to find places we could speed up. Is this you or someone you know? Check out the RFP: https://mzl.la/2IHcMiE


The OscillatorNode() constructor of the Web Audio API creates a new OscillatorNode object which is an AudioNode that represents a periodic waveform, like a sine wave, optionally setting the node's properties' values to match values in a specified object.

If the default values of the properties are acceptable, you can optionally use the AudioContext.createOscillator() factory method instead.


var oscillatorNode = new OscillatorNode(context, options)


Inherits parameters from the AudioNodeOptions dictionary.

A reference to an AudioContext.
options Optional
An object whose properties specify the initial values for the oscillator node's properties. Any properties omitted from the object will take on the default value as documented.
The shape of the wave produced by the node. Valid values are 'sine', 'square', 'sawtooth', 'triangle' and 'custom'. The default is 'sine'.
A detuning value (in cents) which will offset the frequency by the given amount. Its default is 0.
The frequency (in hertz) of the periodic waveform. Its default is 440.
An arbitrary period waveform described by a PeriodicWave object.

Return value

A new OscillatorNode object instance.


Specification Status Comment
Web Audio API
The definition of 'OscillatorNode()' in that specification.
Working Draft Initial definition.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support551 ?53 No42 ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic support551551 ?53 No42 ?

1. Before Chrome 59, the default values were not supported.

Document Tags and Contributors

 Contributors to this page: fscholz, chrisdavidmills, jpmedley, Sheppy, stevenellul
 Last updated by: fscholz,