Come vengono realizzati i plugin VST?


105

Vorrei creare (o imparare a creare) plugin VST. Esiste un SDK speciale per questo? come si produce un .vst invece di un .exe? Inoltre, se si sta cercando di creare unità audio per Logic Pro, come si fa? Grazie

Risposte:


50

Inizia con questo collegamento al wiki, spiega cosa sono e fornisce i collegamenti all'SDK. Ecco alcune informazioni riguardanti lo sviluppo

Come compilare un plug-in - Per creare plug-in VST in C ++ Builder, prima è necessario l'SDK VST di Steinberg. È disponibile dal sito di Yvan Grabit (il collegamento si trova nella parte superiore della pagina).

La prossima cosa che devi fare è creare un file .def (ad esempio: myplugin.def). Questo deve contenere almeno le seguenti righe:

EXPORTS main=_main

I compilatori Borland aggiungono un trattino basso ai nomi delle funzioni, e questo esporta la main()funzione nel modo in cui un host VST se lo aspetta. Per ulteriori informazioni sui file .def, vedere i file della guida di C ++ Builder.

Questo però non è abbastanza. Se hai intenzione di utilizzare qualsiasi elemento VCL (qualsiasi cosa abbia a che fare con moduli o componenti), devi fare attenzione che il tuo plugin non si blocchi in Cubase (o un altro host VST, se è per questo). Ecco come:

  1. Includi float.h.
  2. Nel costruttore della tua classe di effetti, scrivi

    _control87(PC_64|MCW_EM,MCW_PC|MCW_EM);

Questo dovrebbe fare il trucco.

Ecco alcuni siti più utili:

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

come scrivere un plugin vst (pdf) tramite http://www.asktoby.com/#vsttutorial


1
due dei tuoi collegamenti non sono stati completati, correggili.
tiboo

44

So che ha 3 anni, ma per tutti coloro che leggono questo ora: non attenersi a VST, AU o al formato di qualsiasi fornitore. Steinberg ha smesso di supportare VST2 e le persone hanno problemi a portare il loro codice in formati più recenti, perché è troppo legato a VST2.

Questi tutorial coprono la creazione di plugin che vengono eseguiti su Win / Mac, 32/64, tutti i formati di plugin dalla stessa base di codice.


Quel tutorial sembra essere solo per Mac.
liftarn

6
Per le parti in cui ci sono differenze, i tutorial coprono sia Mac che Windows. L'autore però usa un Mac.
basteln

28

Qualche tempo fa ho scritto un HOWTO per lo sviluppo VST su C ++ con Visual Studio che descrive in dettaglio i passaggi necessari per creare un plugin di base per la piattaforma Windows (la versione per Mac di questo articolo è in arrivo). Su Windows, un plug-in VST è solo una normale DLL, ma ci sono un certo numero di "trucchi", ed è necessario creare il plug-in utilizzando alcuni switch specifici del compilatore / linker altrimenti non verrà riconosciuto da alcuni host.

Per quanto riguarda il Mac, un plug-in VST è solo un pacchetto con l'estensione .vst, sebbene ci siano anche alcune impostazioni che devono essere configurate correttamente per generare un plug-in valido. Puoi anche scaricare un set di modelli di progetti di plug-in VST Xcode che ho creato qualche tempo fa che possono aiutarti a scrivere un plug-in funzionante su quella piattaforma.

Per quanto riguarda AudioUnits, Apple ha fornito i propri modelli di progetto che sono inclusi con Xcode. Apple ha anche ottimi tutorial e documentazione online:

Consiglio vivamente anche di controllare Juce Framework , che ha un eccellente supporto per la creazione di plug-in VST / AU multipiattaforma. Se stai diventando open source, Juce è un gioco da ragazzi, ma dovrai pagare le tariffe di licenza per questo se prevedi di pubblicare il tuo lavoro senza codice sorgente.


7

Se conosci un linguaggio .NET (C # / VB.NET ecc.), Controlla VST.NET . Questo framework consente di creare plug-in VST 2.4 (non gestiti) in .NET. Viene fornito con un framework che struttura e semplifica la creazione di un plug-in VST con supporto per parametri, programmi e persistenza.

Esistono diversi esempi che dimostrano i tipici scenari di plug-in. C'è anche la documentazione che spiega come iniziare e alcuni dei concetti alla base di VST.NET.

Spero che sia d'aiuto. Marc Jacobi


5

Mi rendo conto che questo è un post molto vecchio, ma ho avuto successo usando la libreria JUCE, che crea progetti per i principali IDE come Xcode, VS e Codeblocks e crea automaticamente VST / 3, AU / v3, RTAS e AAX.

https://www.juce.com/


Per coloro che si chiedono se questo sia un buon percorso, seguire esattamente il tutorial OSX non ha prodotto risultati per me, solo errori.
Seph Reed
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.