【发布时间】:2021-08-16 19:12:32
【问题描述】:
我的主要目标是使用 JavaScript 压缩音频文件以减小其大小。但棘手的部分是我应该为我的用例抱怨的所有限制和要求:
- 我可以使用 Web Audio API(或基于它的库)压缩音频文件吗?
- 理想情况下,我的代码应该在浏览器和 NodeJS 中运行。对于 Node,我已经在使用 Web Audio API,我依赖于一个库 - https://www.npmjs.com/package/web-audio-api 提供支持;因此,理想情况下,我也应该能够轻松地调整您为 Node 中的浏览器 JS 提出的解决方案。
- 对于 Node,我不想使用 ffmpeg 或任何衍生产品,因为它们依赖本机二进制文件来运行,当我尝试部署到 Google Cloud 函数和 Azure Functions 时,这会使运行时复杂化。
- 目前我的音频内容为AudioBuffer,因此理想情况下,该解决方案应该能够处理此类数据结构并且不需要文件系统交互。
在我看来,基于 Web 音频 API AudioBuffer 的库或用于减少数据大小的算法将是最好的解决方案,因为即使它与用于音频的 NodeJS 库不兼容,希望我能够对其进行修补它适用于我的用例。
【问题讨论】:
标签: javascript node.js google-chrome web audio