Moonbase
-
@tobbentm Is it compatible with GPL plugins?
-
@d-healey said in Moonbase:
@tobbentm Is it compatible with GPL plugins?
Since our JUCE module is closed-source, no.
You'd have to dual-license it, with a separate version that has DRM in it.
Alternatively, you could integrate on your own, or use other libraries to integrate with.
Syl is currently working on a pure C++ (no JUCE dep) open-source thing here, but it's very early days: https://github.com/SLM-Audio/moonbasepp
We're getting more and more requests for a simple C++ library, so we may try to build an alternate open-source solution ourselves next year. -
@tobbentm sorry, late to the topic. HISE is still using (a customized) JUCE version 6.1.4 and as long as there is no real reason like OS or DAW deprecation to upgrade I'm intending to keep it that way. What is keeping the Moonbase JUCE module from being compilable with JUCE 6?
-
@Christoph-Hart the biggest challenge in getting it JUCE v6 compatible is definitely machine IDs. When we were still using the native JUCE v6 utilities to fingerprint devices, we ran into quite some issues as our customer base grew, with collisions between very similar devices and some times changing fingerprints.
This is particularly a problem since you cannot easily change the way you do fingerprinting in one version of a plugin to the next, since you practically invalidate all license tokens and trials.
What could possibly be done here however, is to backport the more modern fingerprinting into your customized JUCE version, do you think that would be an option?Outside of fingerprinting, we are relying on some newer threading constructs, but I don't expect them to be a significant problem. If you'd like to have a look at the source of the module, feel free to create an account on our website, so you can have a look at our TOS, and sign it, after which I can grant you access to the module. We can also sponsor some work here if you're up for it!
-
@tobbentm I've already backported the changes of the machine IDs to be more reliable, which you can enable with
JUCE_USE_BETTER_MACHINE_IDS
when exporting a plugin. Not sure if it is the JUCE 7 code, but I also ran into the problem of machine IDs changing between minor Windows updates. -
@Christoph-Hart said in Moonbase:
machine IDs changing between minor Windows updates
this was very annoying
-
@Christoph-Hart I think there's been an update since then. I've had to integrate from JUCE 7 to fix.
-
@Christoph-Hart said in Moonbase:
JUCE_USE_BETTER_MACHINE_IDS
https://github.com/juce-framework/JUCE/commit/120f9266dc881c81371109c69b37a0a246accdeb
Here's the fix
-
@Christoph-Hart cool! I've scheduled some time with our JUCE freelancer to make it JUCE6 compatible, using the APIs available there for machine IDs. We'll also implement an option to pass your own function for fingerprinting, so it's easy to plug in whatever else you may create, if you don't patch JUCE itself. Is there anything else we can do in the same go to make it more HISE-friendly? Let me know!
-
oooh I'd love to implement moonbase into my HISE projects. I have friends who talk highly of the service!