WaveformatConversionStreamを使用して、記録された音声を含むモノラル16ビットPCM WAVファイルのサンプルレートを11025から16000 Hzに引き上げます。結果として得られる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;
}
}
}
}
}