ConstantSourceNode
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2021年4月.
ConstantSourceNode インターフェイスはウェブオーディオ API の一部で、出力が 1 つの不変の値である音声ソース(AudioScheduledSourceNode に基づいています)を表します。そのため、音声ソースから入ってくる値を一定に保つ必要がある場合に有益な値です。また、 offset の値を自動化したり、他のノードを接続したりして、構成可能な AudioParam として使用することができます。詳しくは ConstantSourceNode による複数の引数の制御を参照して下さい。
ConstantSourceNode は入力を持たず、ちょうど 1 つのモノラル(1 チャンネル)出力を持ちます。出力の値は常に offset 引数の値と同じです。
| 入力数 | 0 |
|---|---|
| 出力数 | 1 |
コンストラクター
ConstantSourceNode()-
新しい
ConstantSourceNodeインスタンスを作成して返します。オプションとして、オブジェクトのプロパティの初期値を確立するためのオブジェクトを指定します。別の方法として、BaseAudioContext.createConstantSource()ファクトリーメソッドを使用することができます。AudioNode の作成を参照してください。
インスタンスプロパティ
親インターフェイスである AudioScheduledSourceNode からプロパティを継承しており、さらに以下のプロパティがあります。
offset-
このソースが連続的に出力する値を指定する
AudioParam。既定値では 1.0 です。
イベント
親インターフェイスである AudioScheduledSourceNode からイベントを継承しています。
メモ:
一部のブラウザーでは、このイベントの実装は AudioScheduledSourceNode インターフェイスの一部となっています。
ended-
ConstantSourceNodeデータの再生が停止するたびに発生します。
インスタンスメソッド
親インターフェイスである AudioScheduledSourceNode からメソッドを継承しています。
メモ:
一部のブラウザーでは、これらのメソッドの実装は AudioScheduledSourceNode インターフェイスの一部となっています。
例
ConstantSourceNode での複数の引数の制御の記事では、 ConstantSourceNode を作成して 1 つのスライダーコントロールで 2 つの GainNode のゲインを変更できるようにしています。 3 つのノードはこのように設定されています。
gainNode2 = context.createGain();
gainNode3 = context.createGain();
gainNode2.gain.value = gainNode3.gain.value = 0.5;
volumeSliderControl.value = gainNode2.gain.value;
constantNode = context.createConstantSource();
constantNode.connect(gainNode2.gain);
constantNode.connect(gainNode3.gain);
constantNode.start();
gainNode2.connect(context.destination);
gainNode3.connect(context.destination);
このコードでは、まずゲインノードを作成し、それらとその値を調整するボリュームコントロールをすべて 0.5 に設定します。次に AudioContext.createConstantSource() を呼び出して ConstantSourceNode を作成し、 2 つのゲインノードのそれぞれのゲイン引数を ConstantSourceNode に接続します。定電位ソースの start() メソッドを呼び出して定電位ソースを開始した後です。最後に、 2 つのゲインノードは音声出力先(通常はスピーカーまたはヘッドフォン)に接続されます。
これで constantNode.offset の値が変わるたびに、 gainNode2 と gainNode3 のゲインは同じ値になるように変化します。
この例を実際に見るには、また、これらのスニペットから派生したコードの残りを読むには、 ConstantSourceNode での複数の引数の制御 を参照してください。
仕様書
| Specification |
|---|
| Web Audio API> # ConstantSourceNode> |
ブラウザーの互換性
Loading…