【问题标题】:Set DelayNode to more than 1将 DelayNode 设置为大于 1
【发布时间】:2021-10-05 20:52:06
【问题描述】:

如何将DelayNode.delayTime 设置为大于 1?

我已经尝试过了,但它会导致一条警告消息,并且只会产生一秒的最大延迟。

var delayNode = audioContext.createDelay();
delayNode.delayTime.maxValue = 3
delayNode.delayTime.minValue = 3
delayNode.delayTime.value = 3

这是警告

Delay.delayTime.value 3 outside nominal range [0, 1]; value will be clamped.

如果无法将延迟设置为超过一,是否有任何变通方法或替代方法?

【问题讨论】:

    标签: javascript audiocontext


    【解决方案1】:

    DelayNode 使用内部缓冲区来存储延迟样本。创建节点时需要创建此缓冲区。它的大小决定了延迟的最大值。创建节点后不能更改缓冲区。默认情况下,它最多只能保存 1 秒的音频。但是您可以将其设置为任意高。将其设置为 3 秒看起来像这样。

    audioContext.createDelay(3);
    // or
    new DelayNode(audioContext, { maxDelayTime: 3 });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-04-07
      • 2023-03-04
      • 2021-06-20
      • 2018-11-11
      • 2021-08-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多