Как сохранить файл.wav в Windows 10 с помощью NAudio
Я пытаюсь сохранить 16-битные моноблочные PCM-аудио 16000 Гц в файле wav в приложении для Windows 10.
У NAudio обычно есть WavFileWriter, но, похоже, его нет в версии для Windows 10. Я могу только найти доступ к новому WaveFormat(16000, 16, 1); с https://www.nuget.org/packages/NAudio/1.7.3/
Можно ли использовать поток для создания файла Wav или его байтов?
2 ответа
Да причина WaveFileWriter
недоступен в UWP, потому что вы не можете использовать старый File
API в UWP так WaveFileWriter
нужно будет переписать для работы в UWP.
Как отметил Томмазо, UWP действительно имеет возможность создавать файлы WAV, используя AudioGraph
но его параметры очень ограничены, поэтому вы не сможете указать точную частоту дискретизации, которую вы хотите. Вы можете найти это AudioEncodingQuality.Low
использует более низкую частоту дискретизации с WAV. (Я не могу вспомнить с макушки головы)
Я подозреваю, что NAudio удалил WavFileWriter, потому что теперь есть замена в стандартном UWP API, в пространстве имен Windows.Media.Audio. Теперь вы должны использовать что-то вроде этого:
MediaEncodingProfile.CreateWav(AudioEncodingQuality.High);
Документация для API: ссылка