AudioBuffer在Node.js中使用Tone.js时未定义



这是我当前的代码。我想在不使用web浏览器的情况下使用Node.js内部的Tone.js库。到目前为止,我知道AudioBuffer是浏览器的一个功能,但我如何使此代码在Node.js中工作?

const Tone = require("Tone");
//create a synth and connect it to the main output (your speakers)
Tone = new Tone.Synth().toDestination();
//play a middle 'C' for the duration of an 8th note
Tone.triggerAttackRelease("C4", "8n");

这是我得到的错误:

ReferenceError: AudioBuffer is not defined

,然后链接到node_modules文件夹中的Tone.js文件。

Tone.js使用Web Audio。您正在尝试在节点上下文中运行它。我正在努力解决同样的问题:我已经有一个在浏览器中运行的离线进程,但现在我正试图使用云功能使其成为服务器端。现在我正在考虑使用这个:https://github.com/audiojs/web-audio-api

我的想法是将这个节点音频上下文传递给tone,但我不确定它有多简单。

如果我成功了,我会通知你的。的问候。dx

最新更新