Our Community Plugin Format

DSP, Plugin and Host development discussion.
Locked New Topic

Poll 1 - Let's give it a name (Acronym)

HOT Plugins
0
No votes
WAR Plugins
0
No votes
TOP Plugins
0
No votes
OUR Plugins
0
No votes
PRO Plugins +1 Point
1
3%
EVE Plugins
3
10%
ION Plugins
3
10%
IVY Plugins
2
7%
MAN Plugins +1 Point
0
No votes
WTF Plugins +2 Points
1
3%
KVR Plugins (permission issue?)
2
7%
DIY Plugins
1
3%
COP Plugins
1
3%
API Plugins (Amazing Plugin Interface)
0
No votes
TPIA Plugins (This Plugin is Amazing)
0
No votes
OPI Plugins (Open Plugin Interface)
8
27%
OPS Plugins (Open Plugin Standard)
8
27%
 
Total votes: 30

RELATED
PRODUCTS

Post

Code: Select all

// Description: An open community audio plugin format
// Due on: August 1st, 2020
On August 1st, we will make it happen. We will release a new free and open community plugin format. Solid, simple, free, and reliable.

How many hours have you wasted in code simply because of the whimsical changes to a corporate controlled plugin format, software development kit, or security implementation? Tired of being led around and forced to pay more simply to use what could be free? Ever feel like there could be just one standard, always reliable, always free, and designed by developers like you?.

Let there be fierce discussions, wild coding arguments, creative solutions. Everyone will be credited for there work (in code comments). I will will help push everything along.. During this time, if there are design impasses, I will make the call to move things along. On July 1st, every year we vote on a new director keep things moving.

Github:
https://github.com/The-Originator/CommunityPlugin
Last edited by Vertion on Wed Jul 08, 2020 4:12 pm, edited 7 times in total.

Post

C or C++?

Post

Vokbuz wrote: Fri Jul 03, 2020 10:51 amC or C++?
No C++ in the interface! That is an absolutely no go!

It makes using other languages almost impossible. Just look at the VST3 disaster in this regard. Use C and add a C++ wrapper around the whole thing if you have to to use C++.

Post

Image

Post

Benutzername wrote: Fri Jul 03, 2020 12:06 pm Just look at the VST3 disaster in this regard. Use C and add a C++ wrapper around the whole thing if you have to to use C++.
Please stop, VST3 disaster is not in language. People who used VST2 C++ wrapper all the way still complain about VST3. If the problem would be in the language, they would not complain.

I totally agree that it should be C interface but not because of the reasons listed above. ABI compatibility is the primary reason. Everything else is not a showstopper.

Post

There are 14 different competing ABI standards for C++. We need to develop one universal ABI standard.
Couldn't resist :lol: :lol: :lol:

Post

Unless there are any objections, the interface will be in C.
SLH - Yes, I am a woman, deal with it.

Post

Well, I guess I will go first with a useful suggestion (if it's feasible). Let the host do all memory allocation, and the plugin only uses hosts' pointers. Some functions for the plugin to request and identify these pointers. It would not be much different than the plugin doing the same work, but it would organize memory-related methods into the host process where more control can be had, for example, well-timed GC, or address space layout.

Post

I can't help with the function,
but the name could be:-
Native
or
OPS- Open Plugin Standard
or
Function

further- the GUI window could allow shapes other than rectangle/square
Last edited by nix808 on Fri Jul 03, 2020 7:12 pm, edited 1 time in total.

Post

camsr wrote: Fri Jul 03, 2020 5:35 pm Well, I guess I will go first with a useful suggestion (if it's feasible). Let the host do all memory allocation, and the plugin only uses hosts' pointers.
Not sure what allocations this rule should apply to (do you have examples?) but generally this is a horrible idea. Host knows nothing about plugin internal structure and lifetime of its objects. There should be clear and simple ownership rules instead. (e.g. VST's effGetChunk result buffer ownership rule is not simple and not clear).

Post

More decisions to make. Should plugin format support:
1) Several plugins in single binary? (I would say: it should)
2) Sample accurate automation? (I would say: it would be nice to have)
3) 64-bit processing? (I would say: I don't really care)
4) Separate GUI that can run on other machine or in other process and communicate with processor via virtual communication channel? (I would say: hell no)
5) Pins (VST2 like) or buses (VST3/AudioUnit like)? (I would pick buses)

Post

nix808 wrote: Fri Jul 03, 2020 6:23 pm further- the GUI window should allow shapes other than rectangle/square
This is a nice request but such feature is not free. It will require more complex API and probably induce portability problems.

Post

Vokbuz wrote: Fri Jul 03, 2020 7:06 pm
nix808 wrote: Fri Jul 03, 2020 6:23 pm further- the GUI window should allow shapes other than rectangle/square
This is a nice request but such feature is not free. It will require more complex API and probably induce portability problems.
I changed my wording slightly, thanks for considering it!
If the API could accept an annexure that allowed this?-but the simple window would be default?ie. the extension would/could not be included in the compile if not desired. It is a complexity yeppy. I can't say that it would be worth the hassle

following this thread with interest, if we find this has support- I can prepare icons and logos
(I was thinking some sort of hex bolt representation (like bolt this to your host))
Last edited by nix808 on Fri Jul 03, 2020 9:55 pm, edited 1 time in total.

Post

I am sure that DAW makers can't wait to add another plugin format to support. 😄

Post

Youlean wrote: Fri Jul 03, 2020 7:31 pm I am sure that DAW makers can't wait to add another plugin format to support. 😄
You may consider this as a mental exercise. It should be fun anyway.

Locked

Return to “DSP and Plugin Development”