如何在 NodeJs 中通过回放进行实时音频分析?

she*_*kit 5 javascript audio node.js raspberry-pi

所以这是我的问题。我想从在树莓派上运行的 nodejs 播放音频,然后根据音频文件的频率读数调整也连接到同一 PI 的 LED 灯条的亮度。但是,我似乎无法在节点中找到与 WebAudio API AnalyserNode 具有相同功能的任何内容。

我发现了一些接近并基于 Web Audio API 的库 ( https://www.npmjs.com/package/audio-render ),但它产生的频率值完全不正确。我通过将它与我使用 Web Audio API 创建的浏览器版本进行比较来验证这一点。

我需要从节点播放音频,同时还需要对其进行分析以影响亮度级别。

任何帮助,将不胜感激。我真的认为这在 node 中处理会更简单,但 6 小时后,我仍然没有解决方案。

nur*_*abe 3

IBM 的 Victor Dibiya 有一个很好的示例,说明了如何使用web-audio-api模块将音频文件解码为 PCM 数据的缓冲区数组,从中可以从声音文件中提取幅度数据并推断节拍:

https://github.com/victordibia/beats

我在 Raspberry Pi 上运行此程序,并通过 Fadecandy 控制 LED。