ConstantSourceNode: offset 属性
ConstantSourceNode 接口的只读 offset 属性返回一个 AudioParam 对象,该对象指示当源被要求提供下一个样本时始终返回的数值 a-rate 值。
注意: 虽然名为 offset 的 AudioParam 是只读的,但其中的 value 属性不是。因此,您可以通过设置 ConstantSourceNode.offset.value 的值来更改 offset 的值。
js
myConstantSourceNode.offset.value = newValue;
值
一个 AudioParam 对象,指示该节点为每个样本返回的 a-rate 值。默认值为 1.0。
要访问 offset 参数的当前值,请访问参数的 value 属性,如上方语法框所示。
示例
此示例展示了如何设置 ConstantSourceNode,使其 offset 值用作一对 GainNode 的输入;此代码段源自完整的示例,您可以在 使用 ConstantSourceNode 控制多个参数 中找到。
js
gainNode2 = context.createGain();
gainNode3 = context.createGain();
gainNode2.gain.value = gainNode3.gain.value = 0.5;
volumeSliderControl.value = gainNode2.gain.value;
constantSource = context.createConstantSource();
constantSource.connect(gainNode2.gain);
constantSource.connect(gainNode3.gain);
首先,创建并配置增益节点,并将滑块控件的值设置为与两个节点上的增益匹配。然后,我们创建一个新的 ConstantSourceNode,并将其作为两个增益节点 GainNode.gain 值的源。这些值中的每一个也是一个 AudioParam。
假设我们有一个事件处理程序(在此例中是用于 click 事件)需要响应并修改两个增益节点的值。在上述链接到位的情况下,可以使用此简单的事件处理程序来完成此操作。
js
function handleClickEvent(event) {
constantSource.offset.value = volumeSliderControl.value;
}
此函数所要做的就是获取我们用于控制成对节点增益的滑块控件的当前值,然后将该值存储到 ConstantSourceNode 的 offset 参数中。这是通过更改其 AudioParam.value 属性的内容来完成的。两个增益节点会迅速采用新的音量级别。
规范
| 规范 |
|---|
| Web Audio API # dom-constantsourcenode-offset |
浏览器兼容性
加载中…