日期:2014-05-18  浏览次数:21159 次

用过Naudio的前辈请进一下。
以下是我的代码 已经可以实现格式转换了,但是我想把音频格式PCM 转换位 CCITT A-Law出现了一点问题
  NAudio.Wave.WaveFormat format = new NAudio.Wave.WaveFormat(8000, 8, 1);

  format.Encoding = WaveFormatEncoding.ALaw; //错误 1 无法对属性或索引器“NAudio.Wave.WaveFormat.Encoding”赋值 -- 它是只读的 C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Projects\转换采样率\转换采样率\Program.cs 30 13 转换采样率

  NAudio.Wave.WaveFileReader fileread = new WaveFileReader(@"E:\1.wav");
  NAudio.Wave.WaveStream wavestream = new WaveFormatConversionStream(format, fileread);
  NAudio.Wave.WaveFileWriter.CreateWaveFile(@"E:\2.wav", wavestream);


我看到 format.Encoding = WaveFormatEncoding.ALaw //它里面有个ALaw 的属性,但是赋值不了,想问你一下如何解决。我看源码看了一些,但是没找到。 
非常感谢了

------解决方案--------------------
看看是否有其他方式赋值

比如 构造函数