Hi ![]()
Logic Pro seems to keep the plugin running after the session has been closed.
If the plugin is a synth, it even keeps the audio loop!!
I’m on JUCE 7.0.12, Logic 10.8.1, on a Mac M2. Anybody experienced something similar?
To reproduce:
- Create a new plugin from Projucer, default setting
- Add the following code in the Constructor/Destructor of the plugin
//==============================================================================
NewProjectAudioProcessor::NewProjectAudioProcessor()
#ifndef JucePlugin_PreferredChannelConfigurations
: AudioProcessor (BusesProperties()
#if ! JucePlugin_IsMidiEffect
#if ! JucePlugin_IsSynth
.withInput ("Input", juce::AudioChannelSet::stereo(), true)
#endif
.withOutput ("Output", juce::AudioChannelSet::stereo(), true)
#endif
)
#endif
{
fileLogger = std::unique_ptr<juce::FileLogger>(
juce::FileLogger::createDefaultAppLogger(
"JUCE_TEST",
"test.log",
"-------- STARTING TEST LOG --------"
)
);
}
NewProjectAudioProcessor::~NewProjectAudioProcessor()
{
fileLogger->logMessage("-------- CLOSING TEST LOG --------");
}
Then run the plugin and in a terminal, run tail -f ~/Library/Logs/JUCE_TEST/test.log to look at the test log.
You will see that the constructor is called when loading the plugin, and destructor called when removing the plugin.
But try loading the plugin and closing the DAW session (Cmd+Alt+W), and you’ll see that the desctructor is not called! Then load a new session and puf suddenly the destructor is called.
If you push it further and test the same with a synth plugin (for example the SamplerPluginDemo), you will see that the processBlock() is even still being called after closing the session… Weird?
Simon
