Как записать NAudio WaveStream в поток памяти?
У меня есть программа, которая принимает данные mp3 в байтовом массиве. Он должен преобразовать эти mp3-данные в формат wav и сохранить их в байтовых данных. Я пытаюсь использовать NAudio для этой цели. Я использую следующий код для этой цели.
Stream inputStream = ...;
Stream outputStream = ...;
using (WaveStream waveStream = WaveFormatConversionStream.CreatePcmStream(new Mp3FileReader(inputStream)))
using (WaveFileWriter waveFileWriter = new WaveFileWriter(outputStream, waveStream.WaveFormat))
{
byte[] bytes = new byte[waveStream.Length];
waveStream.Read(bytes, 0, waveStream.Length);
waveFileWriter.WriteData(bytes, 0, bytes.Length);
waveFileWriter.Flush();
}
Когда я запускаю приведенный выше код, все, что я получаю, это 0 в байтовом массиве. Но если использовать WaveFileWriter для записи данных непосредственно в файл, файл получает правильные данные. Какие-либо причины?