Saturday 11 May 2013

Building Our Gain Plug-In

Building the plug-in is done in exactly the same way we built the JUCE demo plug-in.

Go to the 'Config' tab in The Introjucer. It should have been clever and created an exporter relevant to whatever OS you are using. If not, remember you can add a new project exporter by right clicking on the name of the project at the top of the list.

Also remember that we need to tell it where to find the VST SDK files.

Once you have done that, you can leave The Inrojucer and build the plug-in using whatever tools you have installed, as discussed earlier.

Hopefully you should end up with a new plug-in which you can test out in the host of your choice. Congratulations you have programmed your very own audio plug-in.

You should now have a good groundwork in order to start making your own, super funky, plug-ins. Maybe one day I will do a tutorial on making plug-in editors with JUCE.

Have a nice day now!
Sean

10 comments:

  1. This comment has been removed by the author.

    ReplyDelete
  2. Hi, three semantic issues occur in Juce_AU_Wrapper.mm: "Only virtual member functions can be marked 'override'"
    I'm using XCode 4.2, Juce latest version (downloaded yesterday), vstsdk2.4

    ReplyDelete
    Replies
    1. Hmm, I'm not sure on that one. Sounds like it might be a problem with whatever compiler Xcode 4.2 uses. You might want to flag it up on the JUCE forums and see if anybody else is having the same issue.

      Delete
  3. Thanks! This was exactly what I needed to get going.

    Only issue I have is that I'm not getting the default interface in the AU version (in Bidule), but it shows up in the VST version. Not a big deal for me, since I'll be making my own plugin editor, but I wonder if anybody else is also getting this behaviour in other hosts?

    @Neuran, I was also getting this error (Xcode 5), but I clicked "Fix-It" and that took care of it.

    ReplyDelete
  4. Great tutorial, really helped me to understand Juce a little bit further, thankyou so much!

    I was just wondering though, by choosing false in the "haseditor" function of the PluginProcessor.cpp, should my host applicatio (Logic or AUlab) actually build its own interface for me? Because when I load the plugin in my host there is no interface... just the "Hello World" text.

    Very confusing, and i'm struggling a bit with the GUI..

    Thanks in advance for any help/advice!

    ReplyDelete
    Replies
    1. I'm not sure on this one. I don't know too much about the interior workings of AUs specifically.

      This could be JUCE not supporting this feature when building AUs or (more likely) me missing out something.

      I don't have access to a Mac at the moment to test it on but I'll try and delve into the problem when I do.

      In the mean time, you should be able to switch to the default editor within Logic. One of the options at the top of the plugin window should do it. I can't remember quite where it is, it's been a long time since I used Logic.

      Delete
    2. No if you choose have a editor you have to build the gui by yourself... I built one let me know if you want the source code

      Delete
    3. Hi BK8. If you wouldn't mind sharing your code so I can learn from you how to approach making a GUI that would be superb. Would that be possible? Cheers.

      Delete
  5. Hi Sean. Very useful tutorial. Thanks a lot for doing this and sharing it with everyone. You mentioned perhaps doing a follow up about building plugin editors and I just wanted to let you know I think many people (including myself!) would be really grateful if you ever did that. Cheers!

    ReplyDelete
    Replies
    1. Some time in the next few weeks I need to put together a JUCE GUI tutorial for my university. Some version of that will most likely end up on here so keep your eyes peeled.

      Delete