Logic Pro is recognized as Garage Band

juce::PluginHostType() is recognized as Garage Band in Logic Pro. I tested it with Logic Pro 10.7.5 and JUCE 7.0.3. To test it, you can simply add these lines in the paint() method of the juce::GenericAudioProcessorEditor to display the host description:

g.drawFittedText(juce::PluginHostType().getHostDescription(), getLocalBounds(), juce::Justification::centred, 5, 1.0f);

Then I compiled the GainPlugin from the demos and run it in Logic Pro native Silicon. `

When I debug, it seems that when the application scans the plugin, Logic Pro is well recognized but when the plugin is effectively loaded, the host is recognized as Garage Band. I tested the other methods of juce::PluginHostType(), and juce::PluginHostType().isLogic() returns false whereas juce::PluginHostType().isGarageBand() returns true.

This is a known bug in Logic.

1 Like

Also the question here – because I am interested: why do you even need to know the host?

There are soooo many things each host does differently. Order of calls (or not calling something), data provided on those calls.

So each host requires workaround for unique problems. I have at least 3 Logic unique behaviors I remember by heart.

I have a plug-in with the ARA extension. If the ARA binding is not done, the plug-in displays a message to inform the user that the ARA extension is not supported by the host or that the ARA specifications are not satisfied. But in the case of Logic, the plug-in checks if Logic runs as a native Apple silicon application, and if so it recommends using Rosetta.

1 Like

ARA, yes, it is not supportable by ours hosts because ARA by design does not work out-of-process, which is the only way we do support AudioUnits on Apple Silicon for stability and security reasons.

So it means that ARA support is now deprecated in Logic or do you plan to find a workaround?

1 Like

Celemony needs to find a solution for this, there is nothing we as an app developer can do about it. I haven’t heard anything specific, but that doesn’t mean that teams are talking – I just do not know.