JUCE Binary Files Exaplanation

Hallo

A JUCE newbie here, trying to create my first audio plugin. So i have a very simple version of my plugin and i want to test in a host how it works.

I get three binary files with extensions (.vst3, .vst and .component), when i build my project. How can i add this to a VST host? lets say for example MAX MSP.

On Mac there is a folder for that, you find it under /Library/Audio/Plug-Ins/VST, and the same in your home as well, ~/Library/Audio/Plug-Ins/VST. Place your plugin in one of them. Usually the projucer is set to put the binary there automatically, but it could end up somewhere else.
AudioUnits (AU) are referred to as Components.

Some hosts scan all plugins on each start, but on some you will have to find the “Plug-In manager” and click Scan for plugins…

HTH

Hallo Daniel

Thanks for the reply. Yes i created a separate folder location to save the binary files. I have three binary files as i mentioned before. Can i load them in a windows based vst host? As far as i have seen windows based vst has a extension of .dll and the files generated by JUCE on a mac has an extension .vst or .vst3

In case of mac, which software can i use to load and test my vst or au plugin?

You cannot run plugins on windows, that were compiled for OSX. There exists a process called cross-compiling, which means you compile for a different platform other than the one you run the compiler on. But that is complicated and neither XCode nor Visual Studio support that out of the box afaik.

The route to go is to copy your juce project to a windows box and have the projucer to create a visualStudio project and compile it in VisualStudio (the community edition is free, you can use different IDEs as well, but that usually leads to more fiddling).

To test your plugin, there is

  • juce plugin host: find it in the examples of projucer, pro is that is very small and you can debug into the host as well (hosts AU components, VST and VST3)
  • AuLab is also shipped with OSX or maybe bundeled with XCode. Also a minimalistic host (for AU components only)
  • auval is a test script that will check your component for errors that would lead to exclude your plugin from hosts (for AU components only)

You can use any other host, many have a 1 month trial periode. When you start to market your plugin, i.e. you have a website and a video of your plugin prototype, you might try to ask host manufacturers, if they give you a NFR license to test compatibility. Their generosity is very variable form here to take it via I keep you waiting for two months, or here is a one month license up to no reply, YMMV.

Which host to test depends, what type your plugin is, is it targeted to musicians or sound designers, is it specific to a genre, are the customers professionals, prosumer or home kids…

Typical ones I am aware of (and that I would definitely check before release):

  • Cubase / (Nuendo)
  • Logic / GarageBand / (FinalCutPro)
  • Ableton live
  • Reaper
  • many more optionals…

Worth noting: ProTools have their own plugin format. If your PlugIn sounds interesting you can also apply there to become a partner and get their SDK called AAX. For that you need to communicate with them and sign a NDA.

Hope that helps

2 Likes

that explains a lot. Thanks a lot again. I get the idea now in a clear way now. this is just a start lets see how far i can go with the plugin.

1 Like

Hallo Dainel

Another quick question. So now i can see my plugin in the audio plugin host provided by JUCE and also in AU Lab. In the JUCE plugin host, my input is set to internal microphone and i cant seem to change that. I downloaded and installed soundflower and i can change my input channels to soundflower. But still i cant get an input to my plugin host, either its JUCE plugin host or AU Lab. Any suggestion how can i play a music file and use it as an input to the plugin host?

Some folks here on the forum provided plugins, that you can add to the juce host example, that will provide outputs and play back audio files, e.g. in this thread:

In AUlab, just realised, that I forgot to re install it after upgrading to a new machine, but IIRC you can select the inputs when you start AU Lab or when you create a new project with CMD+N (?)

Hope that helps

SoundFlower works fine here… I can run a Standalone Plug-in… set the output to SoundFlower Stereo… and set the Host input to SoundFlower Stereo… hit play on the Standalone plug-in and I hear the audio and can patch it to any filters… and play it out a sound card.

Rail

thanks a lot again. you are like a life saver. The player plugin you suggested works . and i can add effects from my plugin to output audio.

i missed the external soundcard. I did not add an external soundcard. thanks for the solution.