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