PannerNode: positionY-Eigenschaft
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 positionY
-Eigenschaft der PannerNode
-Schnittstelle spezifiziert die Y-Koordinate der Position der Audioquelle in 3D-Kartesischen Koordinaten, entsprechend der vertikalen Achse (oben-unten). Der vollständige Vektor wird durch die Position der Audioquelle definiert, angegeben als (positionX
, positionY
, positionZ
), und die Orientierung der Audioquelle (das heißt, die Richtung, in die sie zeigt), angegeben als (orientationX
, orientationY
, orientationZ
).
Abhängig von der Direktionalität des Klangs (wie durch die Attribute coneInnerAngle
, coneOuterAngle
und codeOuterGain
spezifiziert), kann die Orientierung des Klangs das wahrgenommene Volumen des Klangs beim Abspielen verändern. Wenn der Klang auf den Hörer zeigt, ist er lauter, als wenn er vom Hörer wegzeigt.
Das in dieser Eigenschaft enthaltene AudioParam
ist schreibgeschützt; dennoch können Sie den Parameterwert ändern, indem Sie der AudioParam.value
-Eigenschaft einen neuen Wert zuweisen.
Wert
Ein AudioParam
, dessen value
die Y-Koordinate der Position der Audioquelle in 3D-Kartesischen Koordinaten ist.
Beispiele
Im folgenden Beispiel startet ein Oszillator, der nach einer Sekunde über den Hörer schwenkt, nach zwei Sekunden unter den Hörer und nach drei Sekunden wieder zur Mitte zurückkehrt. Beachten Sie, dass in diesem Fall die Änderung hauptsächlich das Timbre des Oszillators betrifft, da es sich um eine einfache Mono-Welle handelt.
const context = new AudioContext();
const osc = new OscillatorNode(context);
const panner = new PannerNode(context);
panner.panningModel = "HRTF";
panner.positionY.setValueAtTime(1, context.currentTime + 1);
panner.positionY.setValueAtTime(-1, context.currentTime + 2);
panner.positionY.setValueAtTime(0, context.currentTime + 3);
osc.connect(panner).connect(context.destination);
osc.start(0);
Spezifikationen
Specification |
---|
Web Audio API # dom-pannernode-positiony |
Browser-Kompatibilität
BCD tables only load in the browser