Как создаются VST плагины?

Я хотел бы сделать (или узнать, как сделать) VST плагины. Для этого есть специальный SDK? как можно получить.vst вместо.exe? Кроме того, если вы хотите сделать аудиоустройства для Logic Pro, как это сделать? Спасибо

5 ответов

Решение

Начните с этой ссылки на вики, объясните, что это такое, и дайте ссылки на SDK. Вот некоторая информация относительно Деве

Как скомпилировать плагин - для создания плагинов VST в C++Builder сначала вам понадобится VST SDK от Steinberg. Он доступен на сайте Yvan Grabit (ссылка вверху страницы).

Следующее, что вам нужно сделать, это создать файл.def (например: myplugin.def). Это должно содержать как минимум следующие строки:

EXPORTS main=_main

Компиляторы Borland добавляют подчеркивания к именам функций, и это экспортирует main() функционировать так, как это ожидает хост VST. Для получения дополнительной информации о файлах.def см. Файлы справки C++Builder.

Этого недостаточно, хотя. Если вы собираетесь использовать какой-либо элемент VCL (что-либо связанное с формами или компонентами), вы должны позаботиться о том, чтобы ваш плагин не аварийно завершал работу Cubase (или другого VST-хоста, если на то пошло). Вот как:

  1. Включите float.h.
  2. В конструкторе вашего класса эффектов напишите

    _control87(PC_64|MCW_EM,MCW_PC|MCW_EM);
    

Это должно делать свое дело.

Вот еще несколько полезных сайтов:

http://www.steinberg.net/en/company/developer.html

Как написать плагин VST (PDF) через http://www.asktoby.com/

Я знаю, что это 3 года, но для всех, кто читает это сейчас: не придерживайтесь формата VST, AU или любого другого поставщика. Steinberg прекратил поддерживать VST2, и у людей возникают проблемы с переносом их кода в новые форматы, потому что он слишком привязан к VST2.

Эти учебные пособия охватывают создание плагинов, которые работают на Win/Mac, 32/64, все форматы плагинов из одной базы кода.

Некоторое время назад я написал HOWTO для разработки VST на C++ с Visual Studio, в котором подробно описаны шаги, необходимые для создания базового плагина для платформы Windows (версия этой статьи для Mac будет опубликована в ближайшее время). В Windows плагин VST - это просто обычная DLL, но есть несколько "уловок", и вам нужно собрать плагин, используя некоторые специфические ключи компилятора / компоновщика, иначе он не будет распознан некоторыми хостами.

Что касается Mac, плагин VST - это просто пакет с расширением.vst, хотя есть также несколько настроек, которые должны быть настроены правильно, чтобы сгенерировать действительный плагин. Вы также можете скачать набор шаблонов проектов плагинов Xcode VST, которые я недавно сделал, и которые помогут вам написать работающий плагин для этой платформы.

Что касается AudioUnits, Apple предоставила свои собственные шаблоны проектов, которые включены в Xcode. У Apple также есть очень хорошие учебники и документация онлайн:

Я также настоятельно рекомендую проверить Juce Framework, который имеет отличную поддержку для создания кроссплатформенных плагинов VST/AU. Если вы работаете с открытым исходным кодом, то Juce не составляет труда, но вам нужно будет заплатить за это лицензионные сборы, если вы планируете выпускать свою работу без исходного кода.

Я понимаю, что это очень старая статья, но мне удалось использовать библиотеку JUCE, которая создает проекты для основных IDE, таких как Xcode, VS и Codeblocks, и автоматически создает VST/3, AU/v3, RTAS и AAX.

https://www.juce.com/

Если вы знаете язык.NET (C#/VB.NET и т. Д.), Тогда загляните в VST.NET. Эта структура позволяет создавать (неуправляемые) плагины VST 2.4 в.NET. Он поставляется со структурой, которая структурирует и упрощает создание VST-плагина с поддержкой параметров, программ и персистентности.

Есть несколько примеров, которые демонстрируют типичные сценарии плагинов. Также есть документация, которая объясняет, с чего начать, и некоторые концепции VST.NET.

Надеюсь, поможет. Марк Якоби

Другие вопросы по тегам