I am doing an audio plugin solely for use with Reaper.
I need to use the Reaper API in that plugin.
I found rather old posts by “Xenakios” who did exactly this. But unfortunately Xenakios is not active in that area any more
He wrote in this forum and in the Reaper forum, that this is possible “out of the box” when doing a VST2, but JUCE somehow prevents this when trying to do a VST3.
He therefor did a fork of the JUCE code to allow for this with VST3.
Of course I am not inclined to use unsupported code for JUCE with a new project. But OTOH, for multiple reasons, I’d like to do a VST3.
Can anybody provide any additional pointers to me ?
I have not looked into any of this stuff for about a year now. But as far as I have seen, the Juce team still has not added official support that would allow using host specific extensions with VST3.
What exactly do you need to communicate to/from Reaper about?
Do you need to communicate from your Processor?
Do you need to communicate from your Editor? (Very possible via OSC).
Look at the Default.ReaperOSC located at C:\Users\yourusername\AppData\Roaming\REAPER\OSC.
It is (sort of) self documenting.
At a minimum you should be able to discern what is available via Reaper / OSC.
I’d lidk something similar as SWS LiveConfigs. That supposedly includes what is done by MidiToReaControlPath (or ReaLearn, FWIW).
Regarding “remote-controlling” Reaper, in a first shot I’d like to implement the live activities
mute/unmute tracks
set DAW parameters of plugins
maybe pushing presets to pluigins
do what LiveConfigs calls “tiny fades” (i.e. controlling some track volume parameter which is not the main slider. I did not yet research on how this is done.)
Later I might want to support the user with configuring their setup
set up the Audio and Midi routing
install plugins in tracks ad set properties like “ignore delay compensation”
…
I suppose I need to communicate from the “Processor” when the system is to be working in a live setup: it digests Midi messages and performs the “patch changing” as it had been configured to. I do understand ther with that supposedly both the track’s audio thread an the GUI thread ias involved and this need some kind of internal communication (as MidiToReaControlPath does, but unfortunately that plugin is not open source)
For “configuration support” I suppose communication from the Editor (only the GUI thread involved).
BTW.: In fact I first considered to take over the support for the LiveConfigs part of SWS (which is rather alien to SWS and for understandable reasons for the main supporter of SWS it’s of lesser interest), but it seemed to be quite impossible to separate LifeConfigs form the rest of SWS. Finally ReaLeran inspired me to plan to do a VST instead of a Reaper extension