我已经为此苦苦挣扎了很长一段时间,但找不到有效的解决方案。
我有一个 wav 文件(16 位 PCM:44kHz 2 通道),我想为两个通道中的每一个将样本提取到两个数组中。据我所知,NAudio 库中不存在直接的方法,所以我尝试运行以下代码来读取一些隔行扫描的样本,但缓冲区数组保持为空(只是一堆零):
using (WaveFileReader pcm = new WaveFileReader(@"file.wav"))
{
byte[] buffer = new byte[10000];
using (WaveStream aligned = new BlockAlignReductionStream(pcm))
{
aligned.Read(buffer, 0, 10000);
}
}
对此的任何帮助将不胜感激。