positionZ
特性为
PannerNode
interface specifies the Z coordinate of the audio source's position in 3D Cartesian coordinates, corresponding to the
depth
axis (behind-in front of the listener). The complete vector is defined by the position of the audio source, given as (
positionX
,
positionY
,
positionZ
), and the orientation of the audio source (that is, the direction in which it's facing), given as (
orientationX
,
orientationY
,
orientationZ
).
Depending on the directionality of the sound (as specified using the attributes
coneInnerAngle
,
coneOuterAngle
,和
codeOuterGain
), the orientation of the sound may alter the perceived volume of the sound as it's being played. If the sound is pointing toward the listener, it will be louder than if the sound is pointed away from the listener.
AudioParam
contained by this property is read only; however, you can still change the value of the parameter by assigning a new value to its
AudioParam.value
特性。
var positionZ = PannerNode.positionZ; PannerNode.positionZ.value = newPositionZ;
AudioParam
whose
value
is the Z coordinate of the audio source's position, in 3D Cartesian coordinates.
The following example starts an oscillator and moves it in front of the listener after 1 second, behind the listener after 2 seconds, and back to the listener's position after 3 seconds. Note that in this case, the change will mainly affect the timbre and perceived volume of the sound.
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);
| 规范 | 状态 | 注释 |
|---|---|---|
|
Web 音频 API
The definition of 'positionZ' in that specification. |
工作草案 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
positionZ
|
Chrome Yes | Edge ≤18 | Firefox 50 | IE 不支持 No | Opera Yes | Safari 不支持 No | WebView Android Yes | Chrome Android Yes | Firefox Android 50 | Opera Android Yes | Safari iOS 不支持 No | Samsung Internet Android Yes |
完整支持
不支持
PannerNode
AnalyserNode
AudioBuffer
AudioBufferSourceNode
AudioContext
AudioContextOptions
AudioDestinationNode
AudioListener
AudioNode
AudioNodeOptions
AudioParam
AudioProcessingEvent
AudioScheduledSourceNode
AudioWorklet
AudioWorkletGlobalScope
AudioWorkletNode
AudioWorkletProcessor
BaseAudioContext
BiquadFilterNode
ChannelMergerNode
ChannelSplitterNode
ConstantSourceNode
ConvolverNode
DelayNode
DynamicsCompressorNode
GainNode
IIRFilterNode
MediaElementAudioSourceNode
MediaStreamAudioDestinationNode
MediaStreamAudioSourceNode
OfflineAudioCompletionEvent
OfflineAudioContext
OscillatorNode
PeriodicWave
StereoPannerNode
WaveShaperNode