NAudio捕获到wav文件

时间:2015-03-31 06:44:25

标签: c# naudio

我从网络接收来自DIS的数据包,并希望将这些数据包转换为wav文件。我将缓冲区添加到我的提供者,如下所示。

   WaveFileWriter writer;

   public Player()
   {
      writer = new WaveFileWriter(@"c:\_temp\file.wav", waveProvider.WaveFormat);
   }

    public void AddSamples(byte[] leftDataBuffer)
    {
        waveProvider.AddSamples(leftDataBuffer, 0, leftDataBuffer.Length);
        writer.Write(leftDataBuffer, 0, leftDataBuffer.Length);
    }

如何在此函数本身中将缓冲区添加到同一文件中?请帮忙。

1 个答案:

答案 0 :(得分:1)

我不确定您是在尝试播放音频,还是仅将其保存为WAV。如果只是创建WAV,请使用WaveFileWriter代替BufferedWaveProvider并呼叫Write传入收到的音频。

但如果您愿意,可以同时使用这两种数据,将收到的数据写入WaveFileWriter并将其放入BufferedWaveProvider进行实时播放。