The type
property of the OscillatorNode
interface represents the shape of the oscillator wave generated. Different waves will produce different tones.
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.
Syntax
var oscillator = audioCtx.createOscillator(); oscillator.type = 'square';
Value
An a-rate AudioParam
.
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 = 3000; // 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 | Not supported | 15 webkit 22 (unprefixed) |
6 webkit |
Feature | Android | Chrome | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | Not supported | 28 webkit | 25 | 1.2 | Not supported | Not supported | 6 webkit |