【问题标题】:Wav converting with NAudio使用 NAudio 转换 Wav
【发布时间】:2017-02-07 22:33:29
【问题描述】:

我在将常规 wav 转换为 a-law 声音时遇到问题。这样做时我的质量很差:

WaveStream stream = new WaveFileReader(in.wav);
var s = new RawSourceWaveStream(new WaveFormatConversionStream(new WaveFormat(8000, 16, 1), stream), new WaveFormat(8000, 16, 1));
var c = new WaveFormatConversionStream(WaveFormat.CreateALawFormat(8000, 1), s);
WaveFileWriter.CreateWaveFile(AppDomain.CurrentDomain.BaseDirectory + "\\out.alaw", c);

或者是变慢的声音:

WaveStream stream = new WaveFileReader(in.wav);
 var s = new RawSourceWaveStream(stream, new WaveFormat(8000, 16, 1));
 var c = new WaveFormatConversionStream(WaveFormat.CreateALawFormat(8000, 1), s);
WaveFileWriter.CreateWaveFile(AppDomain.CurrentDomain.BaseDirectory + "\\out.alaw", c);

如何将 wav 转换为高质量的 a-law?

【问题讨论】:

    标签: c# naudio wave


    【解决方案1】:

    在这两个示例中都不需要RawSourceStream,除非in.wav 恰好具有正确的格式,否则第二个示例将不起作用。

    试试这个:

    var stream = new WaveFileReader(in.wav);
    var s = new WaveFormatConversionStream(new WaveFormat(8000, 16, 1), stream);
    var c = new WaveFormatConversionStream(WaveFormat.CreateALawFormat(8000, 1), s);
    WaveFileWriter.CreateWaveFile(AppDomain.CurrentDomain.BaseDirectory + "\\out.alaw", c);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-03
      • 1970-01-01
      • 1970-01-01
      • 2013-01-22
      • 1970-01-01
      • 1970-01-01
      • 2013-08-19
      • 2021-08-15
      相关资源
      最近更新 更多