在 Javascript 中将 32 位 WAV 转换为 16 位 WAV

Posted

技术标签:

【中文标题】在 Javascript 中将 32 位 WAV 转换为 16 位 WAV【英文标题】:Converting 32-bit WAV to 16-bit WAV in Javascript 【发布时间】:2016-02-23 01:20:46 【问题描述】:

我正在使用recorder.js 库在 Chrome 中输出 WAV 文件,但它目前是 32 位 WAV 文件。我在这里查看此代码,但不确定要更改什么以输出 16 位 WAV 文件。音频文件是单声道(单声道)。我有read 需要将值按32,767 缩放,然后转换为16 位整数?

与this question 不同,我不是要降低采样率,也不是更改音频通道的数量。我想改变位深。

【问题讨论】:

你在哪里读到的? Decrease bitrate on WAV file created with recorderjs的可能重复 【参考方案1】:

recorder.js 实际上确实输出了一个 16 位的 WAV 文件,从代码 here 可以看出。我没有意识到这一点,因为我在 Audacity 中打开文件,它会自动将其更改为 32 位 WAV 格式。但是在 VLC 中打开并选择媒体信息显示了正确的结果。

【讨论】:

以上是关于在 Javascript 中将 32 位 WAV 转换为 16 位 WAV的主要内容,如果未能解决你的问题,请参考以下文章

在客户端 JavaScript 中将 WAV 转换为任何压缩音频格式

在 python 中创建 32 位浮点 wav 文件?

如何用 32 位浮点数据编写 wav 文件?

Microsoft 认知服务 SST 支持哪些音频格式?为啥 16 位 PCM x.wav 成功而 32 位 PCM y.wav 不成功?

在 C++ 中将缓冲区导出到 WAV

如何以编程方式在 Android 中将 .mid 转换为 .wav 文件?