javascript - Web Audio API AudioBufferSourceNode 失谐

标签 javascript audio web-audio-api

我创建了一个 AudioBufferSourceNode:var source = audioCtx.createBufferSource();。接下来,我通过 XHR 使用来自 Soundcloud 的轨道加载缓冲区。我可以让所有方法正常运行,并且可以调整大多数属性,例如 loopbufferplaybackRate.value 等。文档表明 detune.value 是另一个可以调整的属性。然而,当我尝试它,期望它改变轨道的音高时,什么也没有发生。控制台告诉我, source.detune 应该是未定义的,如果我没有记错的话,则反对。我能够使失谐在振荡器上完美运行,但不能在通过 XHR 加载的缓冲区上运行。那么,失谐属性是否仅限于某些类型的 AudioBufferSourceNodes(或缓冲区)和振荡器,或者是否有另一种方法可以在不调整播放速率的情况下改变轨道的音高?

最佳答案

据猜测,您使用的是稳定版 Chrome。 Detune 是相当新的,还没有稳定下来。它适用于 Chrome Canary(和 Firefox)。

关于javascript - Web Audio API AudioBufferSourceNode 失谐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32014551/

相关文章:

javascript - 将不同的 Span 和 Input 元素传递给 Javascript 函数

java - android studio 改变 API<23 的音频播放速度

javascript - Node js离线语音转文本

javascript - HTML5音频点击进度条移动到不同时间

javascript - 如何在 SoundJS 中为 Firefox、IE 正确设置位置

HTML5 网络音频 - 将音频缓冲区转换为 wav 文件

javascript - 错误 : Couldn't find preset "es2015" relative to directory "/Users/username"

JavaScript 日志解析器项目 : Bad idea?

JavaScript 二维渲染库 [pixie.js vs three.js]

javascript - 如何将拥有注册回调的成员函数的对象的引用传递给JS中的回调?