对于即将使用 Web Audio API 的项目,我希望能够放大一些音频的音量。
正如我在文档中所读到的,增益节点将输入信号乘以它的增益值。文档指出该值在 to 的范围内0
,1
因此放大似乎不适用于增益节点。但我还能怎么做呢?
对于即将使用 Web Audio API 的项目,我希望能够放大一些音频的音量。
正如我在文档中所读到的,增益节点将输入信号乘以它的增益值。文档指出该值在 to 的范围内0
,1
因此放大似乎不适用于增益节点。但我还能怎么做呢?
更具体地说:正如凯文所说,一的“标称”值代表单位增益 - 即没有变化。这与范围不同。实现必须支持值 > 1 - 事实上,值的整个范围。有许多场景使用大增益缩放值来做有趣的事情,如果实现不支持这一点,将会非常糟糕。
简而言之:使用增益 > 1 来放大事物。如果您完全担心剪辑,请在其后放置一个动态处理器节点。
我不知道没有将增益增加到 1 以上的实现。这就是我在所有项目中一直使用的,并且没有遇到任何问题。
如果您对此非常担心,我想您可以使用 aScriptProcessorNode
并且基本上只需将所有样本乘以您想要的任何缩放值,但是性能会比使用增益节点获得的性能要差得多。而且,这也太荒谬了。
我阅读规范的方式并没有真正让我有任何理由相信大于 1 的值将被GainNode
'sgain
参数忽略。它基本上只是说 1 是标称值。换句话说,如果您希望您的音频不受影响地通过,请将值设置为 1。否则,您将获得衰减或放大。