c++ - quoi - vsti




Comment sont faits les plugins VST? (4)

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


Commencez par ce link 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 devez d'abord utiliser le plugin VST de Steinberg. Il est disponible sur le site d'Yvan Grabit (le lien se trouve en haut de la page).

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

EXPORTS main=_main

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

Cela ne suffit pas, cependant. Si vous voulez utiliser n'importe quel élément VCL (tout ce qui concerne les formulaires ou les composants), vous devez vous assurer que votre plugin ne plante pas Cubase (ou un autre hôte VST, d'ailleurs). Voici comment:

  1. Inclure float.h.
  2. Dans le constructeur de votre classe d'effets, é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


J'ai écrit un HOWTO pour le développement de VST sur C ++ avec Visual Studio en arrière 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 "gotchas", 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.

En ce qui concerne le Mac, un plugin VST est juste un paquet avec l'extension .vst, mais il y a 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 projet plugin Xcode VST que j'ai fait un certain temps, ce qui peut vous aider à écrire un plugin de travail sur cette plate-forme.

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

Je vous recommande également de consulter le framework Juce , qui supporte parfaitement 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 si vous prévoyez de libérer votre travail sans code source.


Je sais que c'est 3 ans, mais pour tout le monde lire ceci maintenant: Ne pas coller au format VST, AU ou de n'importe quel fournisseur. Steinberg a cessé de supporter VST2, et les gens ont du mal à porter leur code vers des formats plus récents, parce que c'est trop lié à VST2.

Ces tutoriels couvrent la création de plugins qui fonctionnent sur Win / Mac, 32/64, tous les formats de plugin provenant de la même base de code.


Si vous connaissez un langage .NET (C # / VB.NET, etc), alors vérifiez 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 framework qui structure et simplifie la création d'un plugin VST avec un support pour les paramètres, les programmes et la persistance.

Plusieurs exemples illustrent les scénarios de plug-in types. Il y a aussi une documentation qui explique comment démarrer et certains des concepts derrière VST.NET.

J'espère que cela aide. Marc Jacobi





vst