Синтез звука с C # - PullRequest
       24

Синтез звука с C #

4 голосов
/ 03 января 2012

Есть ли возможность генерировать звуки в C #? Я имею в виду не просто звуковой сигнал или открытие и воспроизведение волнового файла. Я имею в виду построение сигнала, используя различные виды волн (грех, пила и т. Д.) И их параметры (частоты, амплитуды и т. Д.)

Ответы [ 4 ]

8 голосов
/ 03 января 2012

Выезд NAudio на кодовый комплекс.

NAudio - это библиотека аудио и MIDI с открытым исходным кодом, содержащая десятки полезных классов, связанных со звуком, предназначенных для ускорения разработки утилит, связанных со звуком, в .NET. Он разрабатывался с 2001 года и теперь включает в себя широкий спектр функций. Хотя некоторые части библиотеки являются относительно новыми и неполными, более зрелые функции прошли обширное тестирование и могут быстро использоваться для добавления звуковых возможностей в существующее приложение .NET.

Вы можете использовать библиотеку напрямую или проверить ее исходный код, чтобы узнать, как она работает на низком уровне.

4 голосов
/ 03 января 2012

Вот сообщение в блоге, которое я написал о , как создать синусоидальную волну с помощью NAudio .Очевидно, это всего лишь первый шаг к созданию полноценного синтезатора, поскольку вам также понадобится создавать другие осциллограммы, огибающие ADSR, фильтры и т. Д., Но это по крайней мере должно помочь вам начать работу.

0 голосов
/ 19 мая 2018

Вы можете использовать FLOOPING .Это библиотека, написанная на F #, предоставляющая общие строительные блоки для синтеза звука, такие как генераторы, огибающие, фильтры и т. Д. В настоящее время она находится в экспериментальном состоянии.

Раскрытие информации: я разработчик FLooping.

0 голосов
/ 16 февраля 2016

Я настоятельно рекомендую вам взглянуть на платформу VST .Net.Это позволит вам создавать свои собственные VST в .Net.Если вы хотите сделать синтез, вы, вероятно, обнаружите, что проще создать VST и разместить его в выбранной вами DAW, а не создавать разовое приложение.Это потому, что если вы создаете VST, вам не нужно беспокоиться о работе с драйверами аудиоинтерфейса или ASIO и т. Д. https://vstnet.codeplex.com/

Кроме того, вам также понадобится набор элементов управления для пользователя.интерфейс.Стандартные элементы управления Windows Forms или WPF могут сработать, но энтузиастам синтеза обычно нравится видеть элементы управления с приятной кожей.Недавно я выпустил эти элементы управления, которые ведут себя как обычные элементы управления WPF, но предназначены для синтеза: https://bitbucket.org/MelbourneDeveloper/vst-controls-.net/

...