PannerNode
PannerNode は音源の空間上の位置と振る舞いを表現したインターフェイスで、AudioNode の一種です。右手直交座標系に従って位置を表し、音源の動きは速度ベクトルと、向きを表すサウンドコーンを利用して表現します。
PannerNode は必ず 1 つの入力と、1 つの出力を持ちます。入力はモノラルでもステレオでも構いませんが、出力は必ずステレオとなります。つまりパンニングを行うには最低でも 2 チャンネルの音声チャンネルを必要です。
| 入力数 | 1 |
|---|---|
| 出力数 | 1 |
| チャンネルの数え方 | "clamped-max" |
| チャンネル数 | 2 |
| チャンネルの意味 | "speakers" |
コンストラクター
PannerNode()(en-US)-
新しい
PannerNodeオブジェクトを作成します。
プロパティ
親である AudioNode からプロパティを継承しています。
メモ: 向きと位置の設定と取得は異なる方法で行います。これは、これらの値が AudioParam として保存されてるためです。値の取得は PannerNode.positionX のように行えますが、同じ属性に対して値を設定するには PannerNode.positionX.value のように行います。そのため、これらの値は、WebIDL にあるように、読み取り専用とは定義されていません。
PannerNode.coneInnerAngle-
倍精度実数値で、円錐の角度を度単位で記述し、その内側では容量が減少しません。
PannerNode.coneOuterAngle-
倍精度実数値で、音量を
coneOuterGainプロパティで定義された、一定値だけ減少させる円錐の外側の角度を度単位で記述します。 PannerNode.coneOuterGain(en-US)-
倍精度実数値で、
coneOuterAngle属性で定義された円錐体の外側の音量の減少量を記述します。既定値は0で、音が聴こえなくなることを意味します。 PannerNode.distanceModel(en-US)-
音量の低減計算に用いるアルゴリズムを定めます。アルゴリズムは定められたものの中から選択します。とりうる値は
"linear"、"inverse"、"exponential"で、既定値は"inverse"です。 PannerNode.maxDistance(en-US)-
音源と聴取者の最大距離を定義します。これを超えた場合、音量の低減計算が行われません。
PannerNode.orientationX-
右手直交座標系における音源の向きを表すベクトルのうち、水平方向の値です。
AudioParamは直接変更できないため、値の変更はvalue(en-US) 属性を通して行います。既定値は 1 となっています。 PannerNode.orientationY(en-US)-
右手直交座標系における音源の向きを表すベクトルのうち、垂直方向の値です。
AudioParamは直接変更できないため、値の変更はvalue(en-US) 属性を通して行います。既定値は 0 となっています。 PannerNode.orientationZ(en-US)-
右手直交座標系における音源の向きを表すベクトルのうち、奥行き(前後)方向の値です
AudioParamは直接変更できないため、値の変更はvalue(en-US) 属性を通して行います。既定値は 0 となっています。 PannerNode.panningModel(en-US)-
立体音響計算を行うアルゴリズムを定めます。アルゴリズムは定められたものの中から選びます。
PannerNode.positionX(en-US)-
右手直交座標系における音源の位置を表すベクトルのうち、水平方向の値です
AudioParamは直接変更できないため、値の変更はvalue(en-US) 属性を通して行います。既定値は 0 となっています。 PannerNode.positionY(en-US)-
右手直交座標系における音源の位置を表すベクトルのうち、垂直方向の値です
AudioParamは直接変更できないため、値の変更はvalue(en-US) 属性を通して行います。既定値は 0 となっています。 PannerNode.positionZ(en-US)-
右手直交座標系における音源の位置を表すベクトルのうち、奥行き(前後)方向の値です
AudioParamは直接変更できないため、値の変更はvalue(en-US) 属性を通して行います。既定値は 0 となっています。 PannerNode.refDistance(en-US)-
音量の低減計算に用いる基準距離を表します。音源と聴取者との距離がこれを超えた場合、
rolloffFactorとdistanceModelに基づいて音量の低減が発生します。 PannerNode.rolloffFactor(en-US)-
音源が聴取者から離れていく際に起きる音量の低減量を定めます。この値は、全ての距離モデルで利用されます。
メソッド
親である AudioNode のメソッドを継承しています。
PannerNode.setPosition()(en-US) 非推奨-
聞き手(
BaseAudioContext.listener属性に格納されたAudioListenerオブジェクトで表される)からの音源の相対位置を定義します。 PannerNode.setOrientation()(en-US) 非推奨-
音源が再生されている方向を設定します。
PannerNode.setVelocity()非推奨-
音源の速度を表したベクトルです。移動する速さと方向を表しています。以前の仕様では下流に接続された
AudioBufferSourceNodeのピッチを上げ下げするために、PannerNodeは速度を表す属性を持っていました。この機能は明確に定義されておらず、問題も多かったため、現在の仕様からは削除されています。
例
コード例については BaseAudioContext.createPanner() を参照してください。
仕様書
| Specification |
|---|
| Web Audio API # PannerNode |
ブラウザーの互換性
BCD tables only load in the browser