调用 AudioBufferSourceNode.start() 不播放声音

Call to AudioBufferSourceNode.start() not playing sound

我的 fiddle 中的代码试图做的是

我的需求与该线程 略有相似,但各处略有不同,尽管我不理解该线程中的所有承诺。但是,我相信我的代码被一个小疏忽所阻碍。到目前为止,我无法测试列出的哪些步骤是成功的,因为调用 AudioBufferSourceNode.start() 不会在扬声器中启动播放行为。

我还检查了已处理或生成的 ArrayBuffers 中的数据。它出现在每个 point/index,数组包含 0(这可能意味着它充满了白噪声,但无论如何应该播放)。 您可能会注意到我有时会使用 OfflineAudioContext 实例。我打算将最终缓冲区通过管道传输到一个可以将其导出为 MP3 格式的库。

可在此处找到代码 fiddle。您可以在方便时使用任何本地托管的音频文件

首先,你不能在 OfflineAudioContext 上调用 createMediaElementSource;你必须使用 AudioContext。其次,您可能应该只创建和使用一个 AudioContext.