So I have spent the past week or so trying to minimally/generically patch JUCE so that an upstream patch can be landed with support for REAPER's VST3 interfaces -- particularly interested in TCP FX embedding.
(Have spoken briefly w/ JUCE devs about this, there is some interest/receptiveness on their side depending on implementation)
To get the base REAPER SDK working (
IReaperApplication->getReaperApi()) with a
"reaper.ShowConsoleMsg()" was very few changes.
---
However I wanted to ask two quick questions, as trying to get
IReaperUIEmbedInterface functional did not work based on what I assumed.
- In "reaper_vst3_interfaces.h" and "reaper_plugin_fx_embed.h", the interface given for IReaperUIEmbedInterface is IController. But IController is a VSTGUI-specific interface, I assumed this was a typo and instead it was IEditController from VST3 SDK. Is this right or wrong?
Ref: https://i.imgur.com/uEgPNVO.png
-------
- If it's right, part of what I have done is modified JUCE's JuceVST3EditController (see below) to subclass/implement IReaperUIEmbedInterface, and I have overriden the ::embed_message() method, but nothing is ever called. Is there any way of debugging this from REAPER?
Here's the code for:
Would be grateful for any advise/feedback from folks who have a better clue about what they're doing than me. Getting this working and publishing it for others would be stellar!
JUCE patches made: