使用 NAudio 更改 wav 文件(更改为 16KHz 和 8 位)
我想使用 NAudio 将 WAV 文件更改为 8KHz 和 8bit。
WaveFormat format1 = new WaveFormat(8000, 8, 1);
byte[] waveByte = HelperClass.ReadFully(File.OpenRead(wavFile));
Wave
using (WaveFileWriter writer = new WaveFileWriter(outputFile, format1))
{
writer.WriteData(waveByte, 0, waveByte.Length);
}
但是当我播放输出文件时,声音只是嘶嘶声。我的代码是正确的还是有问题?
如果我将 WaveFormat 设置为 WaveFormat(44100, 16, 1),它工作正常。
谢谢。
I want to change a WAV file to 8KHz and 8bit using NAudio.
WaveFormat format1 = new WaveFormat(8000, 8, 1);
byte[] waveByte = HelperClass.ReadFully(File.OpenRead(wavFile));
Wave
using (WaveFileWriter writer = new WaveFileWriter(outputFile, format1))
{
writer.WriteData(waveByte, 0, waveByte.Length);
}
but when I play the output file, the sound is only sizzle. Is my code is correct or what is wrong?
If I set WaveFormat to WaveFormat(44100, 16, 1), it works fine.
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
几点提示:
下面是一些示例代码,展示了如何从一种格式转换为另一种格式。请记住,您可能需要分多个步骤进行转换,具体取决于输入文件的格式:
A few pointers:
Here's some example code showing how to convert from one format to another. Remember that you might need to do the conversion in multiple steps depending on the format of your input file:
以下代码解决了我处理 G.711 Mu-Law 的问题,其中 vox 文件扩展名为 wav 文件。否则,我一直收到 WaveFileReader 的“No RIFF Header”错误。
The following code solved my problem dealing with G.711 Mu-Law with a vox file extension to wav file. I kept getting a "No RIFF Header" error with WaveFileReader otherwise.