Как изменить формат файла WAV в .NET? - PullRequest
0 голосов
/ 21 октября 2019

Я пытаюсь изменить формат файла WAV в .Net с 32-битного, 44100 частоты дискретизации, стереофонического WAV-файла на 16-битный, 44100 частоты дискретизации, стереофонического WAV-файла.

Код Ive ужепопробовал с Naudio:

public static byte[] ChangeWavQuality(Stream filePath, int sampleRate, int bitDepth, int numOfChannels = 2)
    {
        WaveFormat w = new WaveFormat(sampleRate, bitDepth, numOfChannels);
        WaveStream stream = new WaveFileReader(filePath);
        WaveFormatConversionStream str = new WaveFormatConversionStream(w, stream);
        byte[] buffer = new byte[str.Length];
        str.Write(buffer, 0, buffer.Length);
        return buffer;
    }

Но ошибка, которую я получаю с этим фрагментом кода, который я пробовал, состоит в том, что каждый раз, когда я пытаюсь использовать этот код, я получаю сообщение об ошибке:


AnПроизошло необработанное исключение типа «NAudio.MmException» в NAudio.dll

Дополнительная информация: AcmNotPossible вызывает acmStreamOpen


Любые другие способы изменения формата файла WAV или исправление длявышеуказанная проблема во фрагменте кода?

...