LGPL vs ladspa.h

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

I have made a simple Linux VST plugin that acts as a LADSPA plugin wrapper, so that you can use them in hosts that only supports VST plugins (like Bitwig Studio). But I'm a little uncertain about the legality of distributing this plugin without also giving out the source code.. The code is pretty simple, and I would have no problem posting it, but it needs my full framework to compile, and I'm not yet ready to publish it, as it needs some cleanup and massaging to be 'releaseable'..

The ladspa.h header is distributed under the LGPL license:
https://web.archive.org/web/20150627144 ... dspa.h.txt

https://en.wikipedia.org/wiki/GNU_Lesse ... ic_License
"The main difference between the GPL and the LGPL is that the latter allows the work to be linked with (in the case of a library, 'used by') a non-(L)GPLed program, regardless of whether it is free software or proprietary software. The non-(L)GPLed program can then be distributed under any terms if it is not a derivative work."

http://lkml.iu.edu/hypermail/linux/kern ... /0362.html
Richard Stallman: "Someone recently made the claim that including a header file always makes a derivative work. That's not the FSF's view. Our view is that just using structure definitions, typedefs, enumeration constants, macros with simple bodies, etc., is NOT enough to make a derivative work. It would take a substantial amount of code (coming from inline functions or macros with substantial bodies) to do that."

So.. does this mean that it's safe/legal to distribute the LADSPA plugin in binary form (.so), as long as all code (except the ladspa.h) in the plugin is my own?

- Tor-Helge

Post

Well, that's a tough one... Strictly reading the licence would mean that you may have to also provide the source code, as you are using the header and implementing some of the underlying functions. Affero would probably have been a better choice :/
Have you tried LV2?

Post

Eigen is a header only library that used to be licensed under the LGPL. There was a whole section in their FAQ about it, give it a read. In short, you won't be required to share your source code.

http://eigen.tuxfamily.org/index.php?ti ... oldid=1117

Post

Hmm..
I see that what I write above might be a little confusing..

The Ladspa header (from the official ladspa sdk) which I'm using in my plugin, is distributed under LGPL, but I would like to distribute only the binary version of my resulting Vst plugin at the time being.. I won't distribute any Ladspa plugins, of course, but my plugin can load/wrap whatever Ladspa plugins you might have installed, and use them in Vst-capable hosts..

So, I'm using only the structs, typedefs and #defines from the ladspa.h.. Hence the link to the Stallman/FSF statement..

- Tor-Helge

Post

Dozius wrote:Eigen is a header only library that used to be licensed under the LGPL. There was a whole section in their FAQ about it, give it a read. In short, you won't be required to share your source code.

http://eigen.tuxfamily.org/index.php?ti ... oldid=1117
Thanks!
That sounds promising!

- Tor-Helge

Post

Dozius wrote:Eigen is a header only library that used to be licensed under the LGPL. There was a whole section in their FAQ about it, give it a read. In short, you won't be required to share your source code.

http://eigen.tuxfamily.org/index.php?ti ... oldid=1117
Well, they changed the license also because their interpretation of the LGPL might not have been correct!

Post

Miles1981 wrote:
Dozius wrote:Eigen is a header only library that used to be licensed under the LGPL. There was a whole section in their FAQ about it, give it a read. In short, you won't be required to share your source code.

http://eigen.tuxfamily.org/index.php?ti ... oldid=1117
Well, they changed the license also because their interpretation of the LGPL might not have been correct!
The FAQ also says they had confirmation from the FSF. I'd say that is a pretty strong endorsement that it is OK use.

I did notice in the FAQ however, that LGPL v2.1 might have issues with this use even though v3 of the license solves these issues. So, you might not be in the clear afterall.

edit: P.S They didn't change the license because they were worried the interpretation was incorrect. They did it for several other good reasons that you can read about in the mail archives. One of which was people being scared off by the LGPL even though that had a large detailed FAQ. :lol:

First post here: https://listengine.tuxfamily.org/lists. ... 00043.html

Post Reply

Return to “DSP and Plugin Development”