Comment sont fabriqués les plugins VST?

105

Je voudrais créer (ou apprendre à faire) des plugins VST. Existe-t-il un SDK spécial pour cela? comment donner un .vst au lieu d'un .exe? De plus, si l'on cherche à créer des unités audio pour Logic Pro, comment cela se fait-il? Merci

jmasterx
la source

Réponses:

50

Commencez par ce lien vers le wiki, explique ce qu'ils sont et donne des liens vers le sdk. Voici quelques informations concernant le deve

Comment compiler un plugin - Pour créer des plugins VST dans C ++ Builder, vous avez d'abord besoin du sdk VST de Steinberg. Il est disponible sur le site d'Yvan Grabit (le lien est en haut de la page).

La prochaine chose que vous devez faire est de créer un fichier .def (par exemple: myplugin.def). Celui-ci doit contenir au moins les lignes suivantes:

EXPORTS main=_main

Les compilateurs Borland ajoutent un trait de soulignement aux noms de fonction, ce qui exporte la main()fonction comme l'attend un hôte VST. Pour plus d'informations sur les fichiers .def, consultez les fichiers d'aide de C ++ Builder.

Cela ne suffit cependant pas. Si vous allez utiliser un élément VCL (quoi que ce soit à voir avec des formulaires ou des composants), vous devez faire attention que votre plugin ne plante pas Cubase (ou un autre hôte VST, d'ailleurs). Voici comment:

  1. Incluez float.h.
  2. Dans le constructeur de votre classe d'effet, écrivez

    _control87(PC_64|MCW_EM,MCW_PC|MCW_EM);

Cela devrait faire l'affaire.

Voici quelques sites plus utiles:

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

comment écrire un plugin vst (pdf) via http://www.asktoby.com/#vsttutorial

Développement 4.0
la source
1
deux de vos liens ne sont pas terminés, veuillez le corriger.
tiboo
44

Je sais que cela a 3 ans, mais pour tout le monde qui lit ceci maintenant: ne vous en tenez pas au format VST, AU ou de tout autre fournisseur. Steinberg a cessé de prendre en charge VST2 et les utilisateurs ont du mal à porter leur code vers des formats plus récents, car il est trop lié à VST2.

Ces tutoriels couvrent la création de plugins qui s'exécutent sur Win / Mac, 32/64, tous les formats de plugins à partir de la même base de code.

Basteln
la source
Ce tutoriel semble être uniquement Mac.
liftarn
6
Pour les parties où il existe des différences, les didacticiels couvrent à la fois Mac et Windows. L'auteur utilise cependant un Mac.
basteln
28

J'ai écrit il y a quelque temps un HOWTO pour le développement VST sur C ++ avec Visual Studio qui détaille les étapes nécessaires pour créer un plugin de base pour la plate-forme Windows (la version Mac de cet article est à venir). Sous Windows, un plugin VST est juste une DLL normale, mais il y a un certain nombre de "pièges", et vous devez construire le plugin en utilisant des commutateurs spécifiques du compilateur / éditeur de liens, sinon il ne sera pas reconnu par certains hôtes.

Comme pour le Mac, un plugin VST est juste un bundle avec l'extension .vst, bien qu'il y ait aussi quelques paramètres qui doivent être configurés correctement afin de générer un plugin valide. Vous pouvez également télécharger un ensemble de modèles de projets de plugins Xcode VST que j'ai créés il y a quelque temps et qui peuvent vous aider à écrire un plugin fonctionnel sur cette plate-forme.

En ce qui concerne AudioUnits, Apple a fourni ses propres modèles de projet qui sont inclus avec Xcode. Apple propose également de très bons tutoriels et documentation en ligne:

Je recommanderais également vivement de consulter le Juce Framework , qui offre un excellent support pour la création de plugins VST / AU multiplateformes. Si vous optez pour l'open source, alors Juce est une évidence, mais vous devrez payer des frais de licence pour cela si vous prévoyez de publier votre travail sans code source.

Nik Reiman
la source
7

Si vous connaissez un langage .NET (C # / VB.NET, etc.), consultez VST.NET . Ce framework vous permet de créer des plugins VST 2.4 (non gérés) dans .NET. Il est livré avec un cadre qui structure et simplifie la création d'un plugin VST avec prise en charge des paramètres, des programmes et de la persistance.

Il existe plusieurs exemples qui illustrent les scénarios de plugins typiques. Il existe également une documentation qui explique comment démarrer et certains des concepts derrière VST.NET.

J'espère que ça aide. Marc Jacobi

obiwanjacobi
la source
5

Je me rends compte que c'est un article très ancien, mais j'ai eu du succès en utilisant la bibliothèque JUCE, qui construit des projets pour les principaux IDE comme Xcode, VS et Codeblocks et construit automatiquement VST / 3, AU / v3, RTAS et AAX.

https://www.juce.com/

user43633
la source
Pour ceux qui se demandent si c'est un bon chemin, suivre exactement le tutoriel OSX n'a ​​pas donné de résultats pour moi, seulement des erreurs.
Seph Reed