Creating a VST plugin

Discussion in 'Education' started by The Mazeman, Mar 24, 2019.

  1. lbnv

    lbnv Platinum Record

    Joined:
    Nov 19, 2017
    Messages:
    327
    Likes Received:
    179
    Steinberg SDK is a dependency. It's unavoidable. It's API, every host must communicate with all the plugins. There must be something between them.
     
  2. The Mazeman

    The Mazeman Kapellmeister

    Joined:
    Dec 3, 2017
    Messages:
    208
    Likes Received:
    46
    I am gathering hopes for SOUL now ! Jules hardly fails to impress.
     
  3. lbnv

    lbnv Platinum Record

    Joined:
    Nov 19, 2017
    Messages:
    327
    Likes Received:
    179
    I know nothing about SOUL. Why is it defferent from JUCE?

    And I have to say it. You want to make plugins yourself for using them in your own music production, right? Now you can forget about music making and defer it on one of your next lives. Believe me, I know what I'm saying :unsure:
     
    Last edited: Mar 24, 2019
    • Agree Agree x 2
    • Like Like x 1
    • Funny Funny x 1
    • List
  4. Paul Pi

    Paul Pi Audiosexual

    Joined:
    Oct 18, 2016
    Messages:
    720
    Likes Received:
    709
    Location:
    London
    Wow @The Mazeman, - you're a difficult man to please & today your nom de plume makes complete sense...
     
  5. Bump

    Bump Kapellmeister

    Joined:
    Aug 26, 2011
    Messages:
    414
    Likes Received:
    44
    So basically...music production/plugin development.....pick one?
     
  6. metaller

    metaller Audiosexual

    Joined:
    May 28, 2016
    Messages:
    760
    Likes Received:
    524
    Location:
    Persia
  7. Xupito

    Xupito Audiosexual

    Joined:
    Jan 21, 2012
    Messages:
    6,986
    Likes Received:
    3,859
    Location:
    Europe
    This is the best for starters, as long as you know how to code C/C++ style.
     
  8. Xupito

    Xupito Audiosexual

    Joined:
    Jan 21, 2012
    Messages:
    6,986
    Likes Received:
    3,859
    Location:
    Europe
    SOUL is almost exactly an OpenGL for audio. It implies programming language, hardware developers, drivers, OS,...
    It's a very long shot they can allow themselves thanks to their great work with JUCE, but we won't see any result, if any, in several years. And there'll be competition, money involved.

    FAUST is a language developed exclusively for audio/music.

    Edited: I forgot Matlab. It's a f*ing beast, unbeatable for prototyping audio processing. It can even export to VST, though not optimized.
     
    • Interesting Interesting x 1
    • List
  9. lbnv

    lbnv Platinum Record

    Joined:
    Nov 19, 2017
    Messages:
    327
    Likes Received:
    179
    Mostly, yes. If somebody wants to acheive something. But if programming is a hobby or music making and programming are hobbies why not? It's interesting and we could do it just for fun. It's not good to be scattered if we want to achieve something.
    My words was not not about money or a job. I said about a real result. Something completed, good, useful, valuable. A good plugin (may be paid one) or an excellent song. All we do needs a dedication. And we cannot take all in.
     
  10. The Mazeman

    The Mazeman Kapellmeister

    Joined:
    Dec 3, 2017
    Messages:
    208
    Likes Received:
    46
    does Faust has a feature to accommodate custom GUIs ??
     
  11. junh1024

    junh1024 Rock Star

    Joined:
    Jul 28, 2011
    Messages:
    1,395
    Likes Received:
    432
    This doesn't make you a master of C++ or audio DSP. In fact, it might be irrelevant.

    See http://www.musicdsp.org/en/latest/index.html for FX algorithms.

    To make a Audio VST takes patience, passion, persistence, and preferably background & an aim.

    Maybe C++ VST development isn't for you. There's a lot of boilerplate involved with VSTs. See https://sourceforge.net/projects/mda-vst/ for examples.

    This probably means you want to focus on the core of your audio. This is my 1st JSFX . It's very simple & I still use it often.

    https://github.com/junh1024/Reaper-Surround/blob/master/Specialist/DifferenceMaker.txt

    And i still use JS today because it's quick & simple to make. No boilerplate. No compilation & linking.

    BUT ITS NOT VST!!!!

    You can transpile to VST using https://sourceforge.net/projects/geep-jeez/ or just use ReaJS VST to load JSFX into VST.
     
  12. The Mazeman

    The Mazeman Kapellmeister

    Joined:
    Dec 3, 2017
    Messages:
    208
    Likes Received:
    46
    Clearly you didn't read the previous comments.
    ReaJS requires you to have reaper. You are just repeating what others have said.
     
    • Dislike Dislike x 1
    • Disagree Disagree x 1
    • List
  13. flush with your foot

    flush with your foot Platinum Record

    Joined:
    Apr 12, 2017
    Messages:
    396
    Likes Received:
    274
    Location:
    Geneva
    • Like Like x 1
    • Agree Agree x 1
    • List
  14. The Mazeman

    The Mazeman Kapellmeister

    Joined:
    Dec 3, 2017
    Messages:
    208
    Likes Received:
    46
  15. Xupito

    Xupito Audiosexual

    Joined:
    Jan 21, 2012
    Messages:
    6,986
    Likes Received:
    3,859
    Location:
    Europe
    You're throwing questions without doing your homework.
    And you are wrong, and your wrong assumption is already answered.
    Google ReaPlugs.

    Just to complement this very good comment, if you wanna do GUIs is always complex. Sometimes very complex.
    Modular beasts aside (Matlab, MaxMsp, Bidule,...) if you don't use:
    1. JUCE: minimal C++ with all the boilerplate added
    2. ReaJS: uses EEL2 language developed by Reaper staff. It's super fast to develop with it because it's an interpreted language (uses a JIT compiler like Javascript so doesn't need to compile). Con: the syntax is very weird, though because of good reasons.
    3. Plug'N Script: uses AngelScript which is another JIT script language. But it's a C++ oriented language. Exports directly to VST2/VST3 and you can even compile in C++ with minimal changes.
    Then you better create your own language. Join SOUL team for example :P

    Both ReaJS(EEL2) and Plug'N Script(AngelScript) are fast (for a scripted language) and real-time oriented (maximum latency guaranteed, no sudden Garbage Collecting).
     
    Last edited: Mar 25, 2019
  16. Windows97

    Windows97 Ultrasonic

    Joined:
    Mar 14, 2016
    Messages:
    78
    Likes Received:
    30
    Location:
    Brazil
    if it is not for commercial purpose, you can build basically anything in Reaktor Core , and you can download several Ensembles from the repository of the community and edit them freely.
     
  17. Lasher

    Lasher Noisemaker

    Joined:
    Mar 19, 2018
    Messages:
    5
    Likes Received:
    6
    VST programming is not easy. You need to understand DSP programming, Processor/System resource utilization, UI development etc.... Juce is a good place to start. Roli who purchased Juce is working on a new language called SOUL (Sound Language) that may take module development to the next level. You can learn more about it here:


    I suggest that you check out Dexed. It's a really nice "free" crossplatform FM(DX7) synth that can load sysx cart files as well. It's written with JUCE and the source code is available here:

    Check it out here:
    https://asb2m10.github.io/dexed/ (Note: Click on the Github button at the top for the source)

    There is also AudioKit which can be found here:
    https://audiokitpro.com/audiokit/

    Have fun creating!

    Lasher
     
  18. The Mazeman

    The Mazeman Kapellmeister

    Joined:
    Dec 3, 2017
    Messages:
    208
    Likes Received:
    46
    WOW ! You guys don't read the previous comments at all do you ?
     
  19. The Mazeman

    The Mazeman Kapellmeister

    Joined:
    Dec 3, 2017
    Messages:
    208
    Likes Received:
    46
    That's the ideal solution now, isn't it mate ?
     
  20. The Mazeman

    The Mazeman Kapellmeister

    Joined:
    Dec 3, 2017
    Messages:
    208
    Likes Received:
    46
    I am guessing you meant *minimum latency.
     
Loading...
Loading...