我正在尝试使用NAudio lib,如下所示。当我将WAV文件保存为Mono,4KHz时,AudioBytesOriginal数组全部为零。在Windows中双击时,该文件会播放,因此数据就在那里。它也在Audacity中播放。
using ( var waveFileReader = new WaveFileReader( FileNameIn ) )
{
var thisIsWhat = waveFileReader.WaveFormat; // reports as 8KHz
AudioBytesOriginal = new byte[waveFileReader.Length];
int read = waveFileReader.Read( AudioBytesOriginal , 0 , AudioBytesOriginal.Length );
short[] sampleBuffer = new short[read/2];
Buffer.BlockCopy( AudioBytesOriginal , 0 , sampleBuffer , 0 , read );
}
我需要极低的采样率才能在有限的设备上播放,但我正在使用带有NAudio的.NET Framework 4.6.1来处理字节工作。
感谢。
答案 0 :(得分:0)
要检查的几件事
1)read
的价值是多少?是0吗?
2)你检查了sampleBuffer
多远?即使在音频文件开始时静音半秒也会导致数千个样本的值为0