Releasing VST plugin under GPL
-
- KVRer
- Topic Starter
- 14 posts since 20 Dec, 2006 from The Netherlands
Hi there,
In some topics I read that you can't publish a VST plugin under GPL (or LGPL), or at least that's what I understood of it. I read the license agreement, but I can't find anything implying that. So now I'm not sure whether or not you can publish a VST plugin under GPL. Does anyone know?
Regards,
DJ ReJo
In some topics I read that you can't publish a VST plugin under GPL (or LGPL), or at least that's what I understood of it. I read the license agreement, but I can't find anything implying that. So now I'm not sure whether or not you can publish a VST plugin under GPL. Does anyone know?
Regards,
DJ ReJo
-
Music Engineer Music Engineer https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=15959
- KVRAF
- 4285 posts since 8 Mar, 2004 from Berlin, Germany
GPL requires to include all of the required source code which implies to include ('re-distribute') the VST-SDK which the VST license not allows...something along these lines, i assume.
- KVRAF
- 2185 posts since 25 Jan, 2007 from the back room, away from his wife's sight (or so he thinks)
Pretty much what Robin said.
If you intend to go the open source route, i recommend the BSD license for pretty much everything.
If you intend to go the open source route, i recommend the BSD license for pretty much everything.
Cakewalk by Bandlab / FL Studio
Squire Stratocaster / Chapman ML3 Modern V2 / Fender Precision Bass
Formerly known as arke, VladimirDimitrievich, bslf, and ctmg. Yep, those bans were deserved.
Squire Stratocaster / Chapman ML3 Modern V2 / Fender Precision Bass
Formerly known as arke, VladimirDimitrievich, bslf, and ctmg. Yep, those bans were deserved.
-
- KVRer
- Topic Starter
- 14 posts since 20 Dec, 2006 from The Netherlands
Ah, so you can't release just your own source code under GPL and refer to the VST SDK for the rest?
Edit: can you with BSD?
Edit: can you with BSD?
-
- KVRist
- 100 posts since 6 Jan, 2003
My understanding is, that it is possible. It's only that the Steinberg license is not compliant. So anyone who wants to do a build has to download the VST SDK seperately. There have been exhaustive discussions on the VST mailing list.dj_rejo wrote:Ah, so you can't release just your own source code under GPL and refer to the VST SDK for the rest?
-
- KVRian
- 925 posts since 11 Mar, 2001 from nyc
yeah,
in order to get vst support on some GPL linux apps i've used, i'd have to download the sdk and build with that.
in order to get vst support on some GPL linux apps i've used, i'd have to download the sdk and build with that.
A pointer points to an.....OK, you know what...I quit....
Laserbeak43
Laserbeak43
-
- KVRAF
- 1718 posts since 3 Sep, 2003
As the first author of the software, you can actually just release your source, and have the users get the SDK them selves. As the first authour, you can do what ever you want.
The problem is that this basically makes the GPL pointless since the recipients can't redistribute the software in turn. It also means you can't rely on any gpl:ed libs and such.
So essentially, you are only pushing the problem on to your users.
The problem is that this basically makes the GPL pointless since the recipients can't redistribute the software in turn. It also means you can't rely on any gpl:ed libs and such.
So essentially, you are only pushing the problem on to your users.
-
- KVRist
- 112 posts since 20 Mar, 2004 from UK
An example of how some people handle it using BSD: http://code.google.com/p/wormhole2/
-
- KVRer
- Topic Starter
- 14 posts since 20 Dec, 2006 from The Netherlands
Thanx everyone. I decided to make my own license which is mainly based on BSD, but with a few modifications. I guess that works fine for me.
-
- KVRer
- 16 posts since 24 Feb, 2008
Hello!
I'm sorry for resurrecting such an old thread, but I can't find any answers on either the GPL FAQ, nor around these forums... Most seem to cover GPL, but forget about the Lesser/Library GPL.
Let's say I want to release my plugin under the LGPL as a dynamic library.
1. Can I write and distribute a non-GPL "wrapper" that uses the VST SDK and dynamically links to my plugin, providing it the window handle (so it can draw) and events (so it can do stuff)?
2. Furthermore, could I put that non-GPL wrapper and the LGPL library into a single package, and distribute that as non-GPL (while providing source code for the LGPL part)?
Thanks in advance,
Akel
I'm sorry for resurrecting such an old thread, but I can't find any answers on either the GPL FAQ, nor around these forums... Most seem to cover GPL, but forget about the Lesser/Library GPL.
Let's say I want to release my plugin under the LGPL as a dynamic library.
1. Can I write and distribute a non-GPL "wrapper" that uses the VST SDK and dynamically links to my plugin, providing it the window handle (so it can draw) and events (so it can do stuff)?
2. Furthermore, could I put that non-GPL wrapper and the LGPL library into a single package, and distribute that as non-GPL (while providing source code for the LGPL part)?
Thanks in advance,
Akel
- KVRAF
- 12555 posts since 7 Dec, 2004
if you own all the code (you didn't take other gpl code from somewhere else) you can do ANYTHING you want.
two solutions to the vstsdk problem:
- distribute a closed wrapper for your own plugin format and release your source using that format, not vst
- implement the interface structure yourself and don't use any of the "sdk" files directly, or through modification. if you implement the same interface without using the copyrighted code, even if you are looking at the copyrighted code while doing it - it doesn't apply to you. only the unique elements of the code are copyright protected, such as non-descriptive function and variable names and those sorts of things.
also, the "license" only applies to you if you get something in return. if you're not using the copyrighted files, there is no license. if you break the license terms, you simply no longer have the ability to use the copyrighted files.
for example, the gpl says you are granted the right to redistribute source and binary made from the copyrighted materials under the condition that you pass on the same rights to anyone you distribute to.
just implement this:
likewise for the classes. it's exactly like in music: you can hear a dnb track and then get inspired to make your own dnb track using the same beats, progressions and sections of vocals, effects and whatever else. in order to fit into the dnb genre, it must sound similar in all those respects - however your implementation is fundamentally different and built from the ground up without taking anything from the track that inspired you. if you read the lord of the rings and decide to write a book about elves in some forest it's also no problem - just don't name your elves or forests the same as tolkien did. "elves in forests" have become a widely known and general piece of imagery.
while it is possible to claim absolutely anything in tort, it will be very difficult for anyone to convince a judge you've violated any copyright by writing unique and original code that implements a well known and widely used interface. indeed, the interface is general purpose enough that you could use it for other purposes (not vst plugins) and have no problem. in addition, you can claim the interface MUST be used to enter into the market dominated by this interface.
just implement the minimum parts of the interface required for your code to work, like:
two solutions to the vstsdk problem:
- distribute a closed wrapper for your own plugin format and release your source using that format, not vst
- implement the interface structure yourself and don't use any of the "sdk" files directly, or through modification. if you implement the same interface without using the copyrighted code, even if you are looking at the copyrighted code while doing it - it doesn't apply to you. only the unique elements of the code are copyright protected, such as non-descriptive function and variable names and those sorts of things.
also, the "license" only applies to you if you get something in return. if you're not using the copyrighted files, there is no license. if you break the license terms, you simply no longer have the ability to use the copyrighted files.
for example, the gpl says you are granted the right to redistribute source and binary made from the copyrighted materials under the condition that you pass on the same rights to anyone you distribute to.
just implement this:
Code: Select all
#if defined(WIN32)
#define vstc_IFP __cdecl
#else//if defined(__linux__)
#define vstc_IFP
#endif
#define vstc_HEAD *((long *)"PtsV")
struct vstcore
{
long head;
long (vstc_IFP*dispatch)(vstcore*, long, long, long, void*, float);
blah blah...
};
while it is possible to claim absolutely anything in tort, it will be very difficult for anyone to convince a judge you've violated any copyright by writing unique and original code that implements a well known and widely used interface. indeed, the interface is general purpose enough that you could use it for other purposes (not vst plugins) and have no problem. in addition, you can claim the interface MUST be used to enter into the market dominated by this interface.
just implement the minimum parts of the interface required for your code to work, like:
Code: Select all
#define clientOpen 0
#define clientClose 1
#define clientSetProgram 2
...
#define hostAutomate 0
#define hostVersion 1
...
-
- KVRist
- 279 posts since 13 Jan, 2008
What's wrong with plain "public domain"?
Apparently, there are some legal, mostly non-controverisal subjects you can't talk about on KVR, or even mention in your sig. Unfortunately, the guidelines don't actually talk about them, so the only way to find out is trial and error.
- KVRAF
- 12555 posts since 7 Dec, 2004
vstsdk isn't public domain either, same set of problems.
the problem with using gpl'd library code (code you took from somebody else under gpl) is you must release 100% of your source if you distribute the results. you can't mix licenses like gpl with vstsdk.
there is no problem releasing your code without including vstsdk if you don't use anyone else's code while releasing binaries using that code.
the problem with using gpl'd library code (code you took from somebody else under gpl) is you must release 100% of your source if you distribute the results. you can't mix licenses like gpl with vstsdk.
there is no problem releasing your code without including vstsdk if you don't use anyone else's code while releasing binaries using that code.
-
- KVRer
- 16 posts since 24 Feb, 2008
That clears up a few things. Thanks for the reply!
It raises another interesting question, though: Why is the VST SDK still used, and not a public domain SDK "inspired" from VST and fully compatible with it?
It raises another interesting question, though: Why is the VST SDK still used, and not a public domain SDK "inspired" from VST and fully compatible with it?
- KVRAF
- 12555 posts since 7 Dec, 2004
because the vstsdk is already there and managing a seperate "inspired" interface wouldn't yield any advantage. lots of open source software implements the vst interface without using any "sdk".