0

我正在尝试使用 NAudio 将 WAV 文件转换为 WMA 文件。我已经设法让它部分工作,但声音效果的最后几秒钟被切断了。

WaveFileReader wr = new WaveFileReader(@"C:\mywav.wav");
WmaWriter ww = new WmaWriter(new FileStream(@"C:\mywma.wma",FileMode.Create),new WaveFormat(44100,2),profile);

byte[] buff = null;

int read = 0;

buff=new byte[wr.Length];
read = wr.Read(buff,0,buff.Length);
while ((read > 0))
{
  ww.Write(buff,0,read);
  read = wr.Read(buff,0,buff.Length);
}

这只是部分写入 WMA 文件,而不是读入的整个 WAV 文件。或者,有没有一种方法可以转换为 WMA 而无需 C# 中的 NAudio?

4

1 回答 1

2

正如评论中所讨论的,using对编写器(实际上是读取器)使用一个块,以便正确刷新和关闭流。

于 2012-05-08T22:27:40.837 回答