web-dev-qa-db-fra.com

Comment sont fabriqués les plugins VST?

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

88
jmasterx

Commencez par ceci lien vers le wiki, explique ce qu’ils sont et donne des liens vers le sdk. Voici quelques informations concernant le développement

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 de Yvan Grabit (le lien est en haut de la page).

Vous devez ensuite 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, ce qui exporte la fonction main() comme le prévoit un hôte VST. Pour plus d'informations sur les fichiers .def, voir les fichiers d'aide de C++ Builder.

Ce n'est pas suffisant, cependant. Si vous allez utiliser un élément VCL (quelque chose à voir avec des formulaires ou des composants), vous devez veiller à ce que votre plug-in 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

44
Development 4.0

Je sais que cela fait 3 ans, mais pour tous ceux qui lisent ceci maintenant: Ne vous en tenez pas au format VST, AU ou à tout autre fournisseur. Steinberg a cessé de prendre en charge VST2 et les utilisateurs rencontrent des difficultés pour porter leur code dans de nouveaux formats, car il est trop lié à VST2.

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

36
basteln

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

En ce qui concerne le Mac, un plug-in VST est juste un ensemble avec l'extension .vst, bien qu'il existe également quelques paramètres qui doivent être configurés correctement pour générer un plug-in valide. Vous pouvez également télécharger un ensemble de modèles de projet de plug-in Xcode VST Je me suis fait un peu en arrière, ce qui peut vous aider à écrire un plug-in fonctionnel sur cette plate-forme.

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

Je vous recommande également vivement de consulter Juce Framework , qui offre un excellent support pour la création de plug-ins VST/AU multiplates-formes. Si vous optez pour l'open-source, alors Juce est une évidence, mais vous devrez payer des droits de licence pour cela si vous prévoyez de publier votre travail sans code source.

27
Nik Reiman

Si vous connaissez un langage .NET (C #/VB.NET, etc.), procédez à la validation 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 plug-in VST avec prise en charge des paramètres, des programmes et de la persistance.

Plusieurs exemples illustrent les scénarios de plug-in typiques. Il existe également une documentation qui explique comment démarrer et présente certains des concepts à la base de VST.NET.

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

7
obiwanjacobi

Je réalise que c'est un très vieux billet, mais j'ai eu du succès avec la bibliothèque JUCE, qui construit des projets pour les principaux IDE tels que Xcode, VS et Codeblocks et construit automatiquement VST/3, AU/v3, RTAS et AAX.

https://www.juce.com/

4
user43633