Предполагая, что ваш WAV-файл содержит 16-битный PCM (что является наиболее распространенным), вы можете использовать NAudio , чтобы считать его в байтовый массив, а затем скопировать его в массив из 16-битных целых чисел для удобство. Если это стерео, сэмплы будут чередоваться влево, вправо.
using (WaveFileReader reader = new WaveFileReader("myfile.wav"))
{
Assert.AreEqual(16, reader.WaveFormat.BitsPerSample, "Only works with 16 bit audio");
byte[] buffer = new byte[reader.Length];
int read = reader.Read(buffer, 0, buffer.Length);
short[] sampleBuffer = new short[read / 2];
Buffer.BlockCopy(buffer, 0, sampleBuffer, 0, read);
}
Я знаю, что вы хотели избежать сторонних библиотек, но если вы хотите быть уверенными в том, что справитесь с файлами WAV с дополнительными порциями, я предлагаю избегать таких подходов, как поиск 44 байтов в файле.