1
我正在使用WaveFormatConversionStream來提高包含錄製的語音從11025到16000 Hz的單聲道16位PCM WAV文件的採樣率。由此產生的WAV文件仍然可以理解,但似乎有很多「靜態」(它聽起來好像是通過部分放大揚聲器播放)。這是正常的,預期的行爲,還是我做錯了什麼?代碼如下:使用NAudio增加WAV文件原因「靜態」的採樣率
using (WaveFileReader wfr = new WaveFileReader("inFile.wav"))
{
var newFormat = new WaveFormat(16000, wfr.WaveFormat.BitsPerSample, wfr.WaveFormat.Channels);
using (WaveFileWriter wfw = new WaveFileWriter("outFile.wav", newFormat))
{
using (WaveFormatConversionStream conversionStream = new WaveFormatConversionStream(newFormat, wfr))
{
conversionStream.Position = 0;
byte[] buffer = new byte[1024];
while (conversionStream.Position < conversionStream.Length)
{
int bytesRead = conversionStream.Read(buffer, 0, 1024);
if (bytesRead > 0)
{
wfw.Write(buffer, 0, bytesRead);
}
else
{
break;
}
}
}
}
}