Old 11-25-2017, 05:23 PM   #1
tekord
Human being with feelings
 
Join Date: Mar 2017
Location: Russia
Posts: 15
Default Plugins or extensions on Java (NOT script)?

I have some ideas for extensions, and it would be much easier to implement them on more high level language than C++. Is there any SDK bindings for Java language? If not then maybe someone want to join me and do it by ourselves?
tekord is offline   Reply With Quote
Old 11-25-2017, 06:00 PM   #2
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

What's wrong with C++? Once you get over the initial mandatory problems with the Reaper API, you can write C++ code that isn't too different from Java or whatever...There's also ReaScript in Reaper that lets you test most ideas with Lua, Eel or Python. In many cases you don't even need anything more than those languages.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 11-26-2017, 01:58 AM   #3
tekord
Human being with feelings
 
Join Date: Mar 2017
Location: Russia
Posts: 15
Default

Quote:
Originally Posted by Xenakios View Post
What's wrong with C++? Once you get over the initial mandatory problems with the Reaper API, you can write C++ code that isn't too different from Java or whatever...
- C++ is very different from Java. My extension idea require a lot of GUI which is easier to do with Java Swing or JavaFX;
- It is cross-platform and not required to build extension for every platform supported by Reaper. For instance, I don't have any Apple computers and I can't build and TEST my extension for that platform.
- Java code is much easier to learn, read and maintain than C++. I know C++, but many people don't. To involve more people I need to low the entry threshold level.

Quote:
Originally Posted by Xenakios View Post
There's also ReaScript in Reaper that lets you test most ideas with Lua, Eel or Python. In many cases you don't even need anything more than those languages.
I know, I already wrote some effects on ReaScript, but I want to make custom dockable media browser. Java let me write common core code which can be used not only in Reaper. If something provides C++ API then it can be extentend on any language and I want to try it.
tekord is offline   Reply With Quote
Old 11-27-2017, 02:24 AM   #4
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,184
Default

About 10 years ago I played around with calling in to a Reaper hosted DLL from C#, it was pretty hellish, wouldn't want to even think about a cross platform version.

If you really want to use Java (IMHO it's a bad idea) you might want to look into some way to communicate with a Reaper hosted DLL/dylib as a pass through bridge to get to Reaper, yuccchhh what a thought

Also look into the JUCE stuff (thanks Xen) it's relatively easy to get going.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 11-27-2017, 09:21 AM   #5
toddhisattva
Human being with feelings
 
toddhisattva's Avatar
 
Join Date: Jun 2008
Location: Austin
Posts: 289
Default Jayvee Estee

Quote:
Originally Posted by tekord View Post
I have some ideas for extensions, and it would be much easier to implement them on more high level language than C++. Is there any SDK bindings for Java language? If not then maybe someone want to join me and do it by ourselves?
There are JVST and jVSTwRapper which seem to be abandonware.

You will find it easier to learn C++ for your UI than to do DSP in Java. It just hasn't ever caught on.

But if you are determined to go down that path, you might be able to use SWIG to make an interface. Good luck, and I can't help further, because I refuse to install Java on any machine I care about.
toddhisattva is offline   Reply With Quote
Old 11-27-2017, 09:53 AM   #6
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

Quote:
Originally Posted by toddhisattva View Post
There are JVST and jVSTwRapper which seem to be abandonware.

You will find it easier to learn C++ for your UI than to do DSP in Java. It just hasn't ever caught on.

But if you are determined to go down that path, you might be able to use SWIG to make an interface. Good luck, and I can't help further, because I refuse to install Java on any machine I care about.
The original poster wants to do Reaper extension plugins, not audio DSP plugins like VST plugins. So in principle going with Java for the GUI might be a sensible approach. I am just a bit skeptical how much does Java help in the end, since many GUIs end up needing all kinds of dynamic stuff anyway that have to be implemented manually in the source code. (Unless the GUI frameworks for Java are so awesome they never require doing much manually...)
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios is offline   Reply With Quote
Old 11-27-2017, 09:57 AM   #7
Xenakios
Human being with feelings
 
Xenakios's Avatar
 
Join Date: Feb 2007
Location: Oulu, Finland
Posts: 8,062
Default

Quote:
Originally Posted by tekord View Post
- It is cross-platform and not required to build extension for every platform supported by Reaper. For instance, I don't have any Apple computers and I can't build and TEST my extension for that platform.
You probably won't be able to do the plugins fully in Java, I would expect there has to at least be some kind of a initializer thing written in C and compiled separately for each platform.

In any case, good luck, maybe someone will get interested in trying to implement it with you.
__________________
I am no longer part of the REAPER community. Please don't contact me with any REAPER-related issues.
Xenakios 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 12:11 AM.


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