- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我无法通过 GainNode 的 exponentialRampToValueAtTime 获得音量的滑动变化。
这是一个例子:
var context = new AudioContext(),
osc = context.createOscillator(),
gain = context.createGain();
osc.frequency.value = 440; // A note
osc.start( 0 );
osc.connect( gain );
gain.gain.value = 0;
gain.connect( context.destination );
gain.gain.cancelScheduledValues( 0 );
gain.gain.setValueAtTime( 0, context.currentTime );
gain.gain.exponentialRampToValueAtTime( 1, context.currentTime + 2 );
根据我的理解,这应该逐渐增加音量,直到达到 1 (100%),整个过程应该需要 2 秒。这个假设是否正确?
如果是,为什么保持 0 2 秒,然后突然切换到最大音量?
预先感谢您的时间和精力。
最佳答案
看来这个函数不喜欢0值。 FF 抛出“SyntaxError:指定了无效或非法的字符串”。下面的代码将正确斜坡。参见Plnkr .
var context = new AudioContext(),
osc = context.createOscillator(),
gain = context.createGain();
osc.frequency.value = 440.0; // A note
osc.start( 0 );
osc.connect( gain );
gain.connect( context.destination );
gain.gain.setValueAtTime(0.0001, context.currentTime); // <-- line of interest
gain.gain.exponentialRampToValueAtTime(1, context.currentTime + 10 );
更新:“如果此值小于或等于 0,或者如果前一个事件发生时的值小于或等于 0,则必须抛出 NotSupportedError 异常”根据Web Audio specification .正如@cwilso 所想的那样(见评论)。
关于javascript - audioParam.exponentialRampToValueAtTime 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29819382/
我想我完全错过了一些东西。 AudioParam 接口(interface)的 setValueAtTime()、linearRampToValueAtTime()、exponentialRampTo
当尝试实现 ADSR 包络时,它很容易实现 ADS 攻击、衰减和持续,因为所有这些值的时间都是同时已知的。但是,如果尝试实现此信封的发布部分,我就会遇到麻烦。 问题是我已经记下和记下了提前安排的事件。
我想定期调用 AudioParam 方法“atTime”,以便在播放音频循环时定期调用它们。因此,例如,在方法 linearRampToValueAtTime() 中,我只能指定给定时间,而不能指定时
我无法通过 GainNode 的 exponentialRampToValueAtTime 获得音量的滑动变化。 这是一个例子: var context = new AudioContext(),
有没有办法监听 Web Audio AudioParam 的更改?例如: let context = new AudioContext(); let volume = context.createGa
我认为我们只是轮询 AudioParams 以观察其值的变化是否正确? AudioParam 是作为 AudioNode 的属性创建的,例如: var gainNode = audioContext.
我试图弄清楚如何读取 AudioParam 的当前值。当 AudioNode 通过 AudioNode.connect(AudioParam) 修改 AudioParam 时,它似乎不会影响 Audi
我正在尝试实现可以在任何给定时刻重新启动的音量包络,即使它已经处于参数移动的中间但我无法弄清楚如何在不点击结果音频的情况下执行此操作(关于它们发生的时间似乎有些不规则)。 这可能吗?我看到 Aud
我如何调制 Web Audio API 中的任何 AudioParams,例如使用低频振荡器的 GainNode 的增益值? 最佳答案 https://coderwall.com/p/h1jnmg v
我正在尝试使用给定的 HTMLAudio 元素制作淡入/淡出效果。为此,为了使用 Web Audio API 的 AudioParam 接口(interface),我将 HTMLAudio 元素包裹在
我是一名优秀的程序员,十分优秀!