OscillatorNode.type - Web APIs 编辑
The type
property of the OscillatorNode
interface specifies what shape of waveform the oscillator will output. There are several common waveforms available, as well as an option to specify a custom waveform shape. The shape of the waveform will affect the tone that is produced.
Syntax
OscillatorNode.type = type;
Value
A DOMString
specifying the shape of oscillator wave. The different available values are:
sine
- A sine wave. This is the default value.
square
- A square wave with a duty cycle of 0.5; that is, the signal is "high" for half of each period.
sawtooth
- A sawtooth wave.
triangle
- A triangle wave.
custom
- A custom waveform. You never set
type
tocustom
manually; instead, use thesetPeriodicWave()
method to provide the data representing the waveform. Doing so automatically sets thetype
tocustom
.
Exceptions
InvalidStateError
- The value
custom
was specified. To set a custom waveform, just callsetPeriodicWave()
. Doing so automatically sets the type for you.
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.setValueAtTime(440, audioCtx.currentTime); // value in hertz
oscillator.start();
Specifications
Specification | Status | Comment |
---|---|---|
Web Audio API The definition of 'type' in that specification. | Working Draft |
Browser compatibility
BCD tables only load in the browser
See also
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论