Old 07-22-2021, 04:17 AM   #1
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default Doing Reaper extensions .... not

When doing some enhancement for our favorite DAW, of course a Reaper extension provides the tightest integration.

Moreover a Reaper extension is the most lightweight option, as the librares necessary to be used already are loaded in Reaper, anyway.

But doing a Reaper extension is a somewhat unusual task, and it requires to be done in C++.

Now Helgoboss pointed out that Reaper happily provides the Monitor FX chain and here, plugins can be loaded that are in place independent of the current project, and hence are used very similar to Reaper extensions.

His "ReaLearn" VST can very nicely be used in that way.

AFAIK, ReaLearn is done in a different language than C++, and Helgoboss uses an appropriate SDK and library.

In fact when doing a new plugin, it's not recommended to do a VST2, as you need an agreement with Steinberg to be allowed to distribute it in any form.

OTOH (AFAIK), VST3 plugins can be distributed with any decent license.

Of course you need to use an appropriate SDK and library for your plugin.

The upcoming version of JUCE is able to support VST3s for Windows, Mac and Linux, and is able to handle Reaper specific VST(3) extensions such as "embedded plugin GUI" and access to the complete Reaper API. (The JUCE library provides a vast selection of functions that can be used to do "audio" and other software, including building a nice GUI.)

That is why I feel that the hurdle to do a Reaper extension (here i.e. a VST3 to be loaded in the Monitor FX chain), has been decreased to a much more friendly level.
Happy coding,
-Michael

Last edited by mschnell; 07-22-2021 at 04:25 AM.
mschnell is offline   Reply With Quote
Old 07-22-2021, 04:26 PM   #2
cfillion
Human being with feelings
 
cfillion's Avatar
 
Join Date: May 2015
Location: Québec, Canada
Posts: 4,937
Default

Quote:
Originally Posted by mschnell View Post
That is why I feel that the hurdle to do a Reaper extension (here i.e. a VST3 to be loaded in the Monitor FX chain), has been decreased to a much more friendly level.
[...]
But doing a Reaper extension is a somewhat unusual task, and it requires to be done in C++.
I wouldn't say extensions are a hurdle to make. They're binaries with a specific entry point function (just like VST). Can technically be done in any number of languages that compile into native code. (I think gxray got even a native extension written in Python/cffi working.)

Last edited by cfillion; 07-22-2021 at 09:42 PM.
cfillion is offline   Reply With Quote
Old 07-22-2021, 10:13 PM   #3
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

Great !
Thanks for pointing this out !
In fact I did try to do a Reaper Extension, but failed when trying to use the appropriate libraries (WDL, ...). Moreover I failed when trying to use the debugger in Visual Studio with Reaper. Even though that I got a lot of help in this forum.

With JUCE and VS Code, as well using their libraries, as using the VS Code Debugger was easy.

There has been a great effort by several friendly people (you name it) to enhance JUCE to allow for Reaper specific extensions to VST3. This in place, I find that this perfectly meets my needs for the Reaper extension (in fact a replacement for SWS -> LiveConfigs) I am planning since years.

Thanks again,
-Michael

Last edited by mschnell; 07-23-2021 at 03:34 AM.
mschnell is offline   Reply With Quote
Old 07-26-2021, 12:42 PM   #4
caverna
Human being with feelings
 
caverna's Avatar
 
Join Date: Jun 2021
Location: Germany
Posts: 4
Default Juce for VST3 plugin works great, but not for MCU

I was able to follow some tutorials to create a VST3 plugin without any pain.
My problem is when I try to compile the MCU source using the latest JUCE version (6.0) and VS2019...
I always end up with the "missing library" error message.
I found a lot of information about how to include .lib to overcome those messages, but none when I have .h/.cpp like WDL...
Does someone have this same issue?
caverna is offline   Reply With Quote
Old 07-26-2021, 01:49 PM   #5
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

What do you mean by "MCU source" ?

-Michael
mschnell is offline   Reply With Quote
Old 07-26-2021, 10:30 PM   #6
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

No Idea what this is about.
Good luck with that endeavor ...
-Michael
mschnell is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 09:27 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.