Подтвердить что ты не робот

Кто-нибудь знает какие-либо библиотеки кода C/С++/С#, которые используют эмуляцию синтезатора звука?

Я пытаюсь написать программный синтезатор, который воссоздает звуки, сделанные классическими синтезаторами, такими как Moog и DX7. Кто-нибудь знает какие-либо ресурсы кода для чего-то вроде этого? Спасибо.

4b9b3361

Ответ 1

Существует множество библиотек C/С++, большинство из которых больше не обновляются. Там не много для С#, но я видел пару. Я действительно не использовал их в гневе, поэтому я не могу дать никаких рекомендаций.

Я бы начал с Harmony Central и посмотрел, найдешь ли там что-нибудь там.

В качестве альтернативы, поиск аналога синтеза на sourceforge.net имеет множество результатов.

Ответ 2

CCRMA в Стэнфорде может стать хорошим ресурсом для аудиопрограмм. Synthesis ToolKit в С++ (STK) выглядит так, как будто это может помочь вам.

Ответ 3

Moog и Yamaha DX7 сильно отличаются друг от друга. DX7 использует синтез FM, что очень странно. Очень отличается от обычных аналоги VCO/VCA/VCF, таких как Moog.

В течение долгого времени Yamaha боролась за защиту своих патентов FM, но, похоже, они все истекли. Фазовое искажение Casio было похоже на Yamaha FM, и мне удалось избежать ярости Yamaha (насколько я знаю).

Я бы начал с выбора того или другого. Виртуальный аналог (эмуляция аналоговых синтезаторов) - все это ярость с тех пор, как появился лидер Nord Lead и Access Virus. И гораздо легче созерцать. Поэтому я пошел бы туда, если вы хотите ходить с толпой бедра.

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

FM и PD дикие. Если вы идете по этому маршруту, все дело в том, чтобы связать достаточно FM-операторов вместе в интересных конфигурациях, чтобы получить спектр интересных звуков. Предупреждение: это большая работа, чтобы избежать сглаживания в FM.

Ответ 4

Synthmaker и SynthEdit будут генерировать код VST для вас. SynthEdit определенно выводит нескомпилированные исходные файлы на С++ и является бесплатным.

http://www.synthedit.com/

http://synthmaker.co.uk/

Ответ 5

лучше всего проверить форумы разработчиков в KvR. Они смогут указать вам направление лучших двигателей с открытым исходным кодом DSP/синтеза, а также некоторые плагины VSTi с открытым исходным кодом, от которых вы можете вдохновиться. Все это будет в C/С++. На данный момент в управляемом коде имеется только самый базовый аудио-синтез.

Ответ 6

musicdsp веб-сайт также имеет отличную библиотеку синтеза . Множество примеров кода на C/С++ о том, как делать вещи.

Ответ 7

Посмотрите на ответы на Python Music Library. Хотя вопрос говорит о "Python", Python построен на C. Так что все, что можно использовать с Python, также будет иметь библиотеку C.

Ответ 8

Chuck - это лучшее, что я знаю, но его С++, а не С++.

Ответ 10

Эти учебные пособия (особенно из части 8 и далее) охватывают программирование всех частей классического субтрактивного синтезатора в С++: осцилляторы, конверты, фильтры и LFO.

Ответ 11

У меня был некоторый успех в библиотеке BASS, но поддержка .Net была немного грубой, когда я в последний раз играл с ней. Это в основном низкоуровневое кодирование потока и т.д., Но оно поддерживает некоторые эффекты DX8.

Ответ 12

В CodeProject есть две статьи, которые вы можете проверить. Лесли Стэнфорд создал набор инструментов Synth в С# (насколько я знаю, он полностью управляется).

С# Synth Toolkit - часть I С# Synth Toolkit - Часть II

Кроме того, я только что нашел fooobar.com/info/280341/..., который имеет некоторые хорошие ссылки, хотя он связан с Java