在 NodeJS 中将原始流转换为 WAV 流
Convert Raw to Wav Streams in NodeJS
我正在使用 nodeJS 库naudio
-link— 来录制来自 2 个麦克风的声音(总共 4 个声道音频,每个麦克风都是立体声(。此库在以下规格中吐出.raw
文件:16 BIT, 48000Hz Sample Rate, Channel Count 4
// var portAudio = require('../index.js');
var portAudio = require('naudiodon');
var fs = require('fs');
//Create a new instance of Audio Input, which is a ReadableStream
var ai = new portAudio.AudioInput({
channelCount: 4,
sampleFormat: portAudio.SampleFormat16Bit,
sampleRate: 48000,
deviceId: 13
});
ai.on('error', console.error);
//Create a write stream to write out to a raw audio file
var ws = fs.createWriteStream('rawAudio_final.raw');
//Start streaming
ai.pipe(ws);
ai.start();
process.once('SIGINT', ai.quit);
我尝试将其转换为两个单独的.wav
文件,而不是.raw
文件。有了上述编码和信息,最好的方法是什么?我试图四处寻找简单的方法来去交错和获得.wav
但似乎碰壁了。
该插件是一个名为 portaudio
的C++库的包装器,根据其文档,该库支持写入 WAV
文件。
您可以做的是扩展插件并将NodeJS
函数绑定到写入WAV
的底层C++函数。如果这是一个问题,这将为您提供良好的性能。
如果你想要更简单的东西,你可以查找执行转换的实用程序,并使用这样的ex
从脚本中调用它们
看起来和这个问题类似。
你也可以看看这里,了解如何从javascript创建wav文件。
相关文章:
- 防止主数据类型C++的隐式转换
- 模板参数替换失败,并且未完成隐式转换
- 努力将整数转换为链表。不知道我在这里做错了什么
- HEX值到wchar_t字符(UTF-8)的转换
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 将 Qvector<uint8_t> 转换为 QString
- 如何在cuSparse中使用cusparseXcoo2csr从coo转换为csc
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- 在c++中使用nlohmann从类到json的转换
- 从"int*"强制转换为"unsigned int"会丢失精度错误
- 将Integer转换为4字节的unsined字符矢量(按大端字节顺序)
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- 复制列表初始化的隐式转换的等级是多少
- 将RTP序列有效载荷转换为.wav文件
- 实时录制/转换音频数据到WAV
- 将WAV文件音频输入转换为纯ASCII字符
- 在Android上从mp3到WAV的快速转换
- 如何使用C或c++将.caf文件转换为.wav文件?
- 音频转换(跛脚)C++WAV -> MP3