连接到Web Audio API增益节点的滑块弹出并在我拖动时单击。拖动时音量没有平滑的斜坡

时间:2016-02-12 02:47:53

标签: javascript html5 audio web-audio

增益节点通过HTML输入类型“范围”连接到UI滑块。我可以在拖动时成功更改音量,但无论我如何设置步长,当我拖动滑块时都会听到噪音。

HTML看起来像这样:

   <input id="slider6Volume" type="range" min="0.0008" max="1.0008" step="0.0001" value="0.0008" oninput="changeGain(this.value)"/>

.js是这样的:

function changeGain(newValue) {

document.getElementById('slider6Volume').addEventListener('input', function() {

gainNode6.gain.setValueAtTime(newValue, audioCtx.currentTime);  
console.log ("Channel 6: ", this.value);

}, "false");

我开始使用的浮点值几乎不是那么小,但是这导致了增益值之间的声音阶梯。听起来它正在获得相互冲突的收益更新,但我连接的控制台转储看起来还不错。在稳定不间断的有序流中浮动值。我错过了什么?

1 个答案:

答案 0 :(得分:1)

不要使用setValueAtTime - 使用setTargetAtTime,timeConstant值较小(例如,尝试0.01作为起点)。这将解除设置。