gpt4 book ai didi

javascript - 如何使用 Node.js 将音频样本数组写入 wav 文件?

转载 作者:行者123 更新时间:2023-12-03 12:11:59 26 4
gpt4 key购买 nike

我正在用 JavaScript 编写一个振荡器,它在正弦波频率之间创建一个扫描(即啁啾)。为了测试,我想将样本(浮点数)写入 wav 文件。我将如何在 Node.js 中执行此操作?我已经看到了很多关于浏览器端的信息,但没有任何特定于 Node 或任何依赖于浏览器 API 的信息。

最佳答案

这可以使用最小的包 node-wav 来完成。和一个类似于下面的片段:
首先,安装依赖:

npm i node-wav
然后,使用类似的东西
let fs = require('fs');
let wav = require('node-wav');

// Parameters for the below data
const size = 5000
const amplitude = 128
const sampleRate = 20

// Generate some random data for testing
const data = (new Array(3)).fill((new Array(size)).fill(Math.random() * amplitude))

let buffer = wav.encode(data, { sampleRate: sampleRate, float: true, bitDepth: 32 });

fs.writeFile("test.wav", buffer, (err) => {
if (err) return console.log(err);

console.log("test.wav written");
});
考虑到您已经知道数据的应用,您知道所有“常量”参数(输出大小、比特率、要写入的实际数据、比特深度)。

关于javascript - 如何使用 Node.js 将音频样本数组写入 wav 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36509593/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com