PannerNode: Eigenschaft positionZ
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.
Die positionZ
-Eigenschaft der PannerNode
-Schnittstelle gibt die Z-Koordinate der Position der Audioquelle in 3D-Kartesischen Koordinaten an, was der Tiefenachse (hinter- vor dem Zuhörer) entspricht. Der gesamte Vektor wird durch die Position der Audioquelle definiert, angegeben als (positionX
, positionY
, positionZ
) und die Orientierung der Audioquelle (d.h. die Richtung, in die sie zeigt), angegeben als (orientationX
, orientationY
, orientationZ
).
Abhängig von der Richtwirkung des Sounds (wie durch die Attribute coneInnerAngle
, coneOuterAngle
und coneOuterGain
angegeben), kann die Ausrichtung des Sounds die wahrgenommene Lautstärke beeinflussen, während er abgespielt wird. Wenn der Sound auf den Zuhörer gerichtet ist, wird er lauter sein, als wenn der Sound vom Zuhörer weg zeigt.
Das AudioParam
, das durch diese Eigenschaft enthalten ist, ist schreibgeschützt; Sie können jedoch den Wert des Parameters ändern, indem Sie der AudioParam.value
-Eigenschaft einen neuen Wert zuweisen.
Wert
Ein AudioParam
, dessen value
die Z-Koordinate der Position der Audioquelle in 3D-Kartesischen Koordinaten ist.
Beispiele
Das folgende Beispiel startet einen Oszillator und bewegt ihn nach 1 Sekunde vor den Zuhörer, nach 2 Sekunden hinter den Zuhörer und nach 3 Sekunden wieder an die Position des Zuhörers. Beachten Sie, dass in diesem Fall die Veränderung hauptsächlich den Klangcharakter und die wahrgenommene Lautstärke des Sounds beeinflussen wird.
const context = new AudioContext();
const osc = new OscillatorNode(context);
const panner = new PannerNode(context);
panner.panningModel = "HRTF";
panner.positionZ.setValueAtTime(1, context.currentTime + 1);
panner.positionZ.setValueAtTime(-1, context.currentTime + 2);
panner.positionZ.setValueAtTime(0, context.currentTime + 3);
osc.connect(panner).connect(context.destination);
osc.start(0);
Spezifikationen
Specification |
---|
Web Audio API # dom-pannernode-positionz |
Browser-Kompatibilität
BCD tables only load in the browser