C#NAudio:什么是正确的数据结构?

时间:2013-12-03 11:13:32

标签: c# naudio

我有一个电路将麦克风数据作为字节发送给我。我将这些字节保存到.txt文件中并使用FileStream读取它们。电路的频率为16khz。 我的问题是当我尝试将这些字节转换为wav时,它给了我一个毫无意义的结果。此外,我的录制时间与wav文件持续时间不匹配。

WaveFormat waveFormat = new WaveFormat(16000,8,1);
using (WaveFileWriter writer = new WaveFileWriter(tempFile, waveFormat))
{
  writer.Write(audioBuffer, 0, audioBuffer.Length);
}

wav文件的数据结构是什么?我应该将它们转换为Hex或float还是其他东西?

1 个答案:

答案 0 :(得分:0)

记录16位而不是8位是很常见的,所以我建议先尝试一下:

new WaveFormat(16000,16,1);

一旦你获得了正确的位深度,你就应该听到可识别的声音,尽管如果你的采样率或通道数错误,音调会出错。