I'm trying to host Kairatune plug-in (available for free here http://futucraft.com/2013/kairatune-1-2-is-out/) within a Juce app, and it's definitely failing. I'm using Juce 2.1.8 and I also tried using the "audio plugin host" demo code without success.
The thing is very strange: it seems that this plug-in is somehow breaking the audio processing. When it is loaded, testing the audio from the AudioDeviceSelectorComponent doesn't generate sound anymore.
Nevertheless this plug-in is working perfectly within other hosts (I tried several DAW and SaviHost).
It would be great is someone here could take a look at this, I'm always wondering if my soft is involved (even the "audio plugin host" demo failed).
If you're using OSX, I've occasionally seen things "break the audio device" by producing vastly out-of-range samples, which makes the audio driver panic and go silent (I think there's probably an auto gain control that kicks in). So something that might be worth trying would be to hack in a quick sanity check on the audio buffers produced to limit their values to -1.0 -> 1.0, to see if that sorts it out.
Thanks for the hint! But it does not change anything... The output buffers are always filled with -1.0 values in any case, even when I feed the plug-in with MIDI notes.
It seems like the plug-in doesn't receive the MIDI events. However I've traced the MIDI messages until the dispatcher call (effProcessEvents) in juce_VSTPluginFormat.cpp, so I'm sure the plug-in receives them.
This is the first plug-in I have with this behavior, and the weird thing is it works with other hosts I tried...
I've contacted the developer of this plug-in to check if he's doing something special. He just told me that he begins the process with an RAII FPU state setter FPUState fpuState(FPUState::ROUND_NEAREST);
The class is by mystran from: http://www.kvraudio.com/forum/viewtopic.php?t=312228
But I must admit that it does not help me much :-D