This article needs a technical review. How you can help.
The type
property of the OscillatorNode
interface represents the shape of the oscillator wave generated. Different waves will produce different tones.
Syntax
var oscillator = audioCtx.createOscillator(); oscillator.type = 'square';
Value
A DOMString
specifying the shape of oscillator wave. The different available values are:
sine
square
sawtooth
triangle
custom
Note: You can use the OscillatorNode.setPeriodicWave
method when using custom
to use a custom wave type.
Example
The following example shows basic usage of an AudioContext
to create an oscillator node. For an applied example, check out our Violent Theremin demo (see app.js for relevant code).
// create web audio api context var audioCtx = new (window.AudioContext || window.webkitAudioContext)(); // create Oscillator node var oscillator = audioCtx.createOscillator(); oscillator.type = 'square'; oscillator.frequency.value = 440; // value in hertz oscillator.start();
Specifications
Specification | Status | Comment |
---|---|---|
Web Audio API The definition of 'type' in that specification. |
Working Draft |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | 14 webkit | 23 | No support | 15 webkit 22 (unprefixed) |
6 webkit |
Feature | Android | Chrome | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | No support | 28 webkit | 25 | 1.2 | No support | No support | 6 webkit |