PannerNode:positionX 属性

基线 广泛可用

此功能已得到良好建立,并在许多设备和浏览器版本上都能正常工作。它自以下时间起在所有浏览器中都可用: 2021 年 4 月.

positionX 属性是 PannerNode 接口的一个属性,它指定音频源在 3D 笛卡尔坐标系中的 X 坐标,对应于水平轴(左右)。

完整向量由音频源的位置定义,表示为 (positionX, positionY, positionZ),以及音频源的方向(即它所面向的方向),表示为 (orientationX, orientationY, orientationZ)。

根据声音的方向性(使用属性 coneInnerAngleconeOuterAnglecodeOuterGain 指定),声音的方向可能会改变播放时声音的感知音量。如果声音指向听众,则它会比声音指向远离听众时响亮。

此属性包含的 AudioParam 是只读的;但是,您仍然可以通过为其 AudioParam.value 属性分配新值来更改参数的值。

一个 AudioParam,其 value 是音频源在 3D 笛卡尔坐标系中的位置的 X 坐标。默认值为 0。

示例

以下示例启动一个振荡器,并在 1 秒后将其平移到左侧,在 2 秒后平移到右侧,并在 3 秒后平移回中心。

js
const context = new AudioContext();

const osc = new OscillatorNode(context);
const panner = new PannerNode(context);

panner.positionX.setValueAtTime(-1, context.currentTime + 1);
panner.positionX.setValueAtTime(1, context.currentTime + 2);
panner.positionX.setValueAtTime(0, context.currentTime + 3);

osc.connect(panner).connect(context.destination);

osc.start(0);

规范

规范
Web Audio API
# dom-pannernode-positionx

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅