GainNode

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.

GainNode 接口表示音量的变化。它是一个 AudioNode 音频处理模块,在输出前使用给定增益应用到输入。一个 GainNode 始终只有一个输入和一个输出,两者拥有同样数量的声道。

增益是一个无单位的值,会对所有输入声道的音频进行相应的增加(相乘)。如果进行了修改,则会立即应用新增益,从而在结果音频中产生奇怪的“咔嗒”声。为了防止这种情况发生,请不要直接更改值,而应在 AudioParam 接口上使用指数插值方法。

The GainNode is increasing the gain of the output.

EventTarget AudioNode GainNode
输入的数量 1
输出的数量 1
声道计数模式 "max"
声道数 2(在默认计数模式下不生效)
声道混频 "speakers"(扬声器)

构造函数

GainNode()

创建并返回一个新的 GainNode 对象。作为代替的方法,你可以使用工厂方法 AudioContext.createGain(),参见创建 AudioNode

属性

从其父类 AudioNode 继承属性。

GainNode.gain 只读

是一个 a-rate AudioParam,表示应用的增益量。必须设置 AudioParam.value 或者使用 AudioParam 的方法来改变增益效果。

方法

无具体方法;所有方法继承自父类 AudioNode

示例

参见 BaseAudioContext.createGain() 以获取示例代码,其展示了如何使用 AudioContext 来创建一个 GainNode

规范

Specification
Web Audio API
# GainNode

浏览器兼容性

BCD tables only load in the browser

参见