Web Audio API 收益下降

问题描述 投票:0回答:1

我在使用 Web Audio API 时遇到了问题。

Gain drop example

当我将增益节点连接到链并更改其增益(例如 -6.0dB)时,它会立即将增益降低超过 6.0dB,然后慢慢将音量恢复。类似于在链条中的某个地方有一个缓释压缩机。我在 BiquadFilterNode 上也经历过同样的事情 对于重低音内容来说它更明显。

我使用以下代码来设置增益节点:

var gainNode = context.createGain();
source.connect(gainNode);
gainNode.connect(context.destination);

这可以改变增益:

gainNode.gain.value = -6.0;

这不仅仅是一两分贝的额外下降,有时音频在 6dB 下降时完全静音,并在 2-3 秒内逐渐消失。

我在其他使用 Web Audio API 的网站上没有看到这个问题,所以我假设我在这里遗漏了一些明显的东西,但我无法弄清楚。是的,我是这个 API 的新手。

任何想法都会非常有帮助!是否有自动增益或默认情况下我需要禁用的东西?

javascript audio web-audio-api
1个回答
0
投票

增益值是绝对的,因此您不会用-6 来减小该值,而是将其设置为-6。

正如文档所说,不应该这样做。尽量保持在 0 到 20 之间。0 没什么意义,20 则非常响亮。 1 是 100%。

您可以使用负值,因为您可以使用增益节点来操纵从振荡器到滤波器的频率。请参阅我的网站 gtube.de => PUBLISH,了解节点如何在 FM 调制上相互运行。

但是要处理纯体积,请保持在 0 和其他值之间,但不能为负数。

© www.soinside.com 2019 - 2024. All rights reserved.