Answer the question
In order to leave comments, you need to log in
How to write your own VST synthesizer?
In my spare time I like to write music for myself. But I wondered, how to write your own VST synthesizer or VST plugin, can someone point me in the right direction? Has anyone done this? Where to begin?
Answer the question
In order to leave comments, you need to log in
The articles referenced by Armenian Radio are really good. I translated them, in fact, precisely because I wanted to start writing my own low-level DSP code myself. The WDL-OL library used there allows you to abstract from several standards and simply write code, compiling it into different formats, incl. VST2 and VST3.
As time goes by, I might add a few things. First, it is worth deciding a little more clearly what exactly you want to do. Plugin plugin strife. Writing some more or less standard synthesizer and experimenting with z-transform are two fundamentally different tasks. The second point follows from this: it is good to have several different tools for modeling/research/programming. Sometimes it is useful to sketch out what is called a proof of concept. Those. create a very basic model of what you want to do quickly, just to see if it works or not.
C++ with all the frameworks and libraries available is great, especially if you have good programming skills. But sometimes it's easier to assemble from cubes, for example, connect ready-made oscillators to the desired network of oscillators and modulators, send them to reverb, etc. Or read samples from a file and do something with them. All this can be done in a few minutes without bothering with dynamic arrays and pointers. Take a look at the Chuck and Pure Data languages. They allow you to dive a little deeper than just the designer's cubes. There are also Сsound and SuperCollider. For all but Chuck, there are many resources, books and forums.
Another option for effects and synths is SyntEdit. This is an inexpensive and quite powerful tool for developing plug-ins, something like NI Kontakt.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question