CARVIEW |
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
OscillatorNode
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
OscillatorNode
インターフェイスは、正弦波などの周期的な波形を表します。これは、 AudioScheduledSourceNode
音声処理モジュールの一種で、指定された周波数の波を作成させ、実質的には一定の音になります。
入力数 | 0 |
---|---|
出力数 | 1 |
チャンネルカウントモード | max |
チャンネルカウント | 2 (デフォルトのカウントモードでは使用されません。) |
チャンネルの解釈 | speakers |
コンストラクター
OscillatorNode()
-
新しい
OscillatorNode
オブジェクトのインスタンスを作成します。オプションとして、ノードのプロパティに既定値を指定したオブジェクトを提供します。別の方法として、BaseAudioContext.createOscillator()
ファクトリーメソッドを使用することも可能です。AudioNode の作成を参照してください。
プロパティ
親インターフェイスである AudioScheduledSourceNode
からプロパティを継承しており、さらに以下のプロパティがあります。
OscillatorNode.frequency
-
a-rate の
AudioParam
であり、振動数・周波数をヘルツ(hertz、記号:Hz)で表わしたものです。(AudioParam
は読み取り専用ですが、この値はそうではありません)。初期値は 440 Hz (中央 A (ラ)音)です。 OscillatorNode.detune
-
a-rate の
AudioParam
であり、発振音の離調をセント単位で表します(AudioParam
は読み取り専用ですが、この値が表す値はそうでありません)。既定値は 0 です。 OscillatorNode.type
-
再生する波形の種類を指定する文字列です。いくつかの標準値の中から 1 つ、または、
custom
でPeriodicWave
を使用したカスタム波形を設定することができます。波形が異なれば、音色も異なります。標準的な値は"sine"
,"square"
,"sawtooth"
,"triangle"
,"custom"
です。既定値は"sine"
です。
イベントハンドラー
OscillatorNode.onended
-
音の再生が停止したときに発行される
ended
イベントに対するイベントハンドラーを設定します。
メソッド
親インターフェイスである AudioScheduledSourceNode
からメソッドを継承しており、さらに以下のメソッドがあります。
OscillatorNode.setPeriodicWave()
-
標準的な波形の代わりに使用する、周期的な波形を記述した
PeriodicWave
を設定します。これを呼び出すとtype
はcustom
に設定されます。 OscillatorNode.start()
-
音色の再生を開始する正確な時間を指定します。
OscillatorNode.stop()
-
音色の再生を停止する時間を指定します。
例
以下の例は、 AudioContext
を使用して発振器ノードを作成し、その上で音の再生を開始する基本的な使用方法を示しています。応用例としては、 Violent Theremin demo をご覧ください(関連するコードは app.js を参照してください)。
// ウェブオーディオ API コンテキストの作成
const audioCtx = new (window.AudioContext || window.webkitAudioContext)();
// Oscillator ノードを作成します。
const oscillator = audioCtx.createOscillator();
oscillator.type = "square";
oscillator.frequency.setValueAtTime(440, audioCtx.currentTime); // ヘルツ単位の値
oscillator.connect(audioCtx.destination);
oscillator.start();
仕様書
Specification |
---|
Web Audio API> # OscillatorNode> |
ブラウザーの互換性
Loading…