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 チャンネルの音声チャンネルを必要です。

The PannerNode defines a spatial position and direction for a given signal.

EventTarget AudioNode PannerNode
入力数 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

音量の低減計算に用いる基準距離を表します。音源と聴取者との距離がこれを超えた場合、rolloffFactordistanceModel に基づいて音量の低減が発生します。

PannerNode.rolloffFactor

音源が聴取者から離れていく際に起きる音量の低減量を定めます。この値は、全ての距離モデルで利用されます。

インスタンスメソッド

親である AudioNode のメソッドを継承しています。

PannerNode.setPosition() 非推奨;

聞き手(BaseAudioContext.listener 属性に格納された AudioListener オブジェクトで表される)からの音源の相対位置を定義します。

PannerNode.setOrientation() 非推奨;

音源が再生されている方向を設定します。

コード例については BaseAudioContext.createPanner() を参照してください。

仕様書

Specification
Web Audio API
# PannerNode

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
PannerNode
PannerNode() constructor
coneInnerAngle
coneOuterAngle
coneOuterGain
distanceModel
maxDistance
orientationX
orientationY
orientationZ
panningModel
positionX
positionY
positionZ
refDistance
rolloffFactor
setOrientation
Deprecated
setPosition
Deprecated

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Deprecated. Not for use in new websites.

関連情報