Как использовать VST SDK на .NET Framework - PullRequest
5 голосов
/ 25 сентября 2011

Мне нравится делать музыку, используя в основном мой компьютер, и особенно люблю использовать синтезаторы. Существует широкий спектр плагинов для синтезаторов, доступных в сети, которые просто великолепны. Я скачал VST (Virtual Studio Technology) SDK, который является платформой, которую используют большинство известных мне плагинов.

Я хотел бы знать, можете ли вы использовать SDK в .Net framework для написания плагинов; единственная документация и учебные пособия, которые я смог найти, относится к C ++, и я не очень доверяю C ++. Я мог бы научиться использовать C ++, я изучал сам C # за неделю, но использовать неизвестный язык и изучать другие новые концепции не кажется хорошей комбинацией.

Может ли кто-нибудь просто дать мне указание в правильном направлении о том, как начать и даже если это можно запрограммировать с помощью .Net?

С уважением, Чарльз

Ответы [ 3 ]

5 голосов
/ 26 сентября 2011

Многие начинающие считают VST.NET идеальным выбором для начала. Он поставляется с некоторыми примерами и шаблонами проектов VS2008 / VS2010, которые дают рабочие плагины. Так что это отличный способ начать.

VST.NET предоставляет структуру, которая структурирует и группирует VST API в управляемые части. Из коробки предоставляется поддержка общих функций, таких как параметры плагина и программы.

Так что заходите на сайт VST.NET codeplex , и мы поможем вам начать работу.

Кстати: насколько мне известно, шумовой проект был заброшен, и, хотя VST.NET может показаться не очень активным, я все еще продолжаю реагировать на вопросы, размещенные на его сайте codeplex.

1 голос
/ 17 ноября 2015

Я второе чувство obiwanjacobi.VST.Net является единственным единственным мостом .Net VST, о котором я знаю, и сообщество замечательное.Это превосходный фреймворк.

https://vstnet.codeplex.com/

Что касается утверждения: " сомнений. Платформа .NET была бы адекватной в отношении сырой производительности, которая требуется для плагина VST "Это совершенно не соответствует действительности.Мои тесты показали, что на приличном компьютере .Net очень легко справляется с базовым синтезом, даже не поднимая уровень ЦП выше нескольких процентов.Конечно, он не будет соответствовать производительности C ++ для очень сложного синтеза, но в подобных случаях нет причин, по которым вы не можете использовать C ++ для выполнения более сложных задач.На самом деле это то, где Vst.Net превосходит.Это позволило бы вам построить очень сложный синтез в виде VST, а затем использовать его в .Net.

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

Помимо всего этого, теперь есть .Net Native, который нужно добавить к картинке..Net Native обладает потенциалом быть быстрым как C ++.

1 голос
/ 25 сентября 2011

Я помню, что слышал о noisevst и VST.NET , двух оболочках C # для VST API, но я не знаю, насколько они стабильны. И я действительно сомневаюсь, что платформа .NET будет адекватной в отношении сырой производительности, которая требуется для плагина VST.

Так что я бы рекомендовал немного изучить C ++. Да, C ++ настолько большой и сложный, что никто на земле не знает всех его особенностей. Но для разработки плагинов достаточно всего лишь реализовать несколько методов. Вы можете начать с предоставленных образцов в VST API. Код Audio DSP не будет выглядеть по-другому, если вы все равно будете использовать C #, C ++ или любой другой основной язык.

Если вы также хотите внедрить графический интерфейс для своего плагина, вот тут-то и начнутся проблемы. VSTGUI прост, но не имеет многих функций. Я могу порекомендовать * iP1g Framework WDL , но это потребует чуть больше, чем базовый C ++.

...