Closed mschnell1 closed 2 years ago
Hi @mschnell1 -
To implement this we'd need to write bindings to Reaper's VST3 extensions.
From there you would need bindings to the specific structs/constants you want to use defined in the rest of that repo in order to support Reaper extensions in your plugin.
To implement this we'd need to write bindings to Reaper's VST3 extensions.
I in fact have no idea about how host specific extensions to VST3 work under the hood, and what specifics for the Reaper bindings (Reaper API and/or embedded Plugin GUI needs to be implemented at the VST3 API layer, as JUCE did that for me.
From there you would need bindings to the specific structs/constants you want to use defined in the rest of that repo in order to support Reaper extensions in your plugin.
This supposedly is what I already got working within JUCE (with the kind help of the Reaper forum members) as well Reaper API as embedded Plugin GUI. Cocos provides C++ code (including complex Macros) for this. Once same included actually using it is rather easy.
-Michael
Support for this was merged in #53
Great ! I am totally impressed by this team !
I recently did a (testing / proof of concept) VST3 in C++ using JUCE. Same uses the host specific extensions to VST3 to take advantage of two Reaper specific features: using the internal Reaper API, and allowing for a second ("embedded") GUI that Reaper shows in the appropriate track either in the track header (left) as in the Mixer. I in fact have no idea how JUCE under the hood handles this host specific stuff, but I would like to port my code to Rust - which JUCE does not support, and hence would need to use or do the appropriate enhancement in RustAudio. Any comments ? Thanks, -Michael