Я занимаюсь разработкой приложения на C #, которое записывает потоковое аудио в MP3.
Я новичок в этом, но из того, что я видел до сих пор, самый простой способ сделать это - запись в WAV с использованием NAudioа затем создайте версию MP3, используя либо LameMP3FileWriter, либо MediaFoundationEncoder.
Однако у меня возникают проблемы с преобразованием, поскольку звуковая система моего компьютера имеет формат 5.1, и преобразование MP3 происходит сбой из-за количества каналов взаписанный файл WAV.Он прекрасно работает, когда я переконфигурирую звуковую систему на стерео, но это немного болезненно;во-первых, это означает, что я не могу использовать свою систему 5.1 при записи музыки, но возникает еще одна проблема, по какой-то причине, которую я не могу понять, если я переключу свои динамики на стерео, они вернутся в квадрофонический режим при перезагрузке ПК (Windows 10)!
Кто-нибудь может подсказать, как я могу сделать это преобразование без необходимости настраивать звук 5.1?
Одно очевидное решение сделать что-то вроде передискретизации WAV-файла на 2 канала перед преобразованием в MP3, но это похоже на «длинный ярлык».Мне также неясно, в чем преимущество записи в WAV, в первую очередь - аудиопотоки сжимаются и вряд ли будут иметь более 2-х каналов для начала, поэтому проигрывание через 5.1, независимо от того, насколько хорошо это звучит, действительно немногоиллюзорным.
Казалось бы, более разумно просто записать поток прямо в MP3, но я не могу найти какой-либо прямой способ сделать это.