Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support building multiple plugins #42

Open
atsushieno opened this issue May 16, 2023 · 2 comments
Open

Support building multiple plugins #42

atsushieno opened this issue May 16, 2023 · 2 comments
Labels
enhancement New feature or request upstream

Comments

@atsushieno
Copy link
Owner

Currently there are couple of plugins that builds multiple plugin artifacts (and that I am aware of):

  • ChowPhaser (Mono/Stereo)
  • ADLplug-AE (ADL/OPN)
  • DDSP-VST (Effect/Synth)

So far aap-juce build system only brings in one plugin, but that is not ideal. We should be able to build and package multiple plugins within an apk.

@atsushieno
Copy link
Owner Author

This turned out to be impossible with current JUCE API by design:

The attached patch is for aap-juce-adlplug-ae (as of eeadd42) that packages both ADLplug and OPNplug within an apk. It packages both native libraries correctly, but only the plugin that was loaded later by System.loadLibrary() at com/rmsl/juce/Java.kt is working. The other results in runtime crashes. It is due to how Android JNI resolves the loaded native symbols and basically there is no remedy unless JUCE itself fixes these possible duplicate symbols issue.

two-plugins.patch

@atsushieno atsushieno added enhancement New feature or request upstream labels Jun 10, 2023
@atsushieno
Copy link
Owner Author

Actually it's not 100% JUCE faulty; aap-juce also generates identical function (GetJuceAAPFactory()).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request upstream
Projects
None yet
Development

No branches or pull requests

1 participant