此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

GainNode

基线 广泛可用

自 2015年7月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

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

规范

规范
Web Audio API
# GainNode

浏览器兼容性

参见