Back to Content

BaseAudioContext: createOscillator() method

files/en-us/web/api/baseaudiocontext/createoscillator/index.md

latest1.5 KB
Original Source

{{APIRef("Web Audio API")}}

The createOscillator() method of the {{domxref("BaseAudioContext")}} interface creates an {{domxref("OscillatorNode")}}, a source representing a periodic waveform. It basically generates a constant tone.

[!NOTE] The {{domxref("OscillatorNode.OscillatorNode", "OscillatorNode()")}} constructor is the recommended way to create an {{domxref("OscillatorNode")}}; see Creating an AudioNode.

Syntax

js-nolint
createOscillator()

Parameters

None.

Return value

An {{domxref("OscillatorNode")}}.

Examples

The following example shows basic usage of an AudioContext to create an oscillator node. For applied examples/information, check out our Violent Theremin demo (see app.js for relevant code); also see our {{domxref("OscillatorNode")}} page for more information.

js
// create web audio api context
const audioCtx = new AudioContext();

// create Oscillator node
const oscillator = audioCtx.createOscillator();

oscillator.type = "square";
oscillator.frequency.setValueAtTime(3000, audioCtx.currentTime); // value in hertz
oscillator.connect(audioCtx.destination);
oscillator.start();

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also