[vlc-devel] GPL issues ( was: Re: How can add a new codec module to VLC?)

Derk-Jan Hartman hartman at videolan.org
Thu May 20 15:15:17 CEST 2004

On 20 mei 2004, at 13:37, Matthew Romaine wrote:
> On 2004/05/20, at 15:47, Gildas Bazin wrote:
>> Last advice, beware that VLC is released under the GPL license so you 
>> might
>> have problems with linking to a proprietary library.
> Heh, I'm glad you brought this up.  I haven't gotten around to 
> consulting with lawyers yet, but my understanding is that the GPL 
> doesn't really restrict linking to a proprietary library.  I 
> understand all modifications I make to the VLC code base -- including 
> file parsing and function calls to the library, etc. -- will have to 
> be released, but aside from the concern that people will know what the 
> function names are inside the library, is there anything else that I 
> should note?  The GPL doesn't require that I also release the 
> proprietary library, right? (i.e., my contributions for the time being 
> may be unusable...)

Welcome to one of the great debates on the interpretation of the GPL 
license. Above explanation is the one used by many. VideoLAN however 
follows the GPL to the letter ( mplayer and Xine dont ) and the GPL 
strictly forbids linking of GPL programs to proprietary, closed code, 
unless they are part of the OS itself. A sigma proprietary library can 
not be considered to be part of the OS and therefore a GPL'ed program 
could not make use of it. This is how the GPL works in our reading of 
it, and in our eyes mplayer, Xine and a lot of other projects violate 
their own license...

As a show of some of the discussion this results in:

14:31 < thedj> mm, GPL and proprietary lib. issues. don't you just love 
14:31 < bigben_> well, I thought GPL was quite clear about it...
14:31 < thedj> actually it isn't
14:32 < thedj> it talks about derivative works. but it's hard to define 
what that is.
14:32 < bigben_> so, let's at least tell him the way we understand it...
14:32 < thedj> for instance this section
14:32 < thedj> If
14:32 < thedj> identifiable sections of that work are not derived from 
the Program,
14:32 < thedj> and can be reasonably considered independent and 
separate works in
14:32 < thedj> themselves, then this License, and its terms, do not 
apply to those
14:32 < thedj> sections when you distribute them as separate works.
14:33 < sam> well, a program that uses a given library can obviously 
not be considered "independent"
14:34 < thedj> sam: but the two sourcecodes can be independently 
distributed, as long as you don't compile them....
14:34 < thedj> rather a weird situation :)
14:34 < sam> thedj: this is circumvention
14:34 -!- Psycho[B]ud [~PsychoBud at h000102c59fbb.ne.client2.attbi.com] 
has quit [Read error: 110 (Connection timed out)]
14:34 < thedj> no, it's what it says...
14:35 < sam> who, it?
14:35 < thedj> sam: GPL.
14:35 < sam> if program A uses library B, it is obviously derived from 
B; you can easily prove that by stating that without B, A would not 
14:35 < thedj> if the prop lib is written before the program, you 
cannot call it a derivative work.
14:36 < Defaf> when is 0.7.2 coming out?
14:36 < sam> I am not stating that the library is a derivating work of 
the program
14:36 < sam> I am stating that the program is a derivative work of the 
14:36 < sam> s/ing/ive/
14:36 < thedj> true.
14:38 < thedj> still derivative is not a good description.
14:38 < sam> derivative is a legal term
14:38 < thedj> which will never hold up in court ....
14:38 < thedj> a 'user' would be more correct.
14:39 < sam> user does not mean anything
14:39 < sam> derivative has a legal meaning and it has been used again 
and again in court; not related to the GPL though
14:40 < gibalou> considering that only distribution is regulated by the 
GPL, can you actually have code that depends on a proprietary library 
as long as you don't distribute this library with the program ?
14:40 < thedj> yes
14:40 < sam> yes
14:40 < thedj> by the letter of the GPL, i think you can
14:40 < thedj> actually you could even use it yourself.
14:41 < thedj> as long as you don't distribute
14:41 < gibalou> and users could install the library themself as long 
as they know how do find/do it.
14:42 < thedj> derivative is incorrect naming. it implies being based 
on. using as a basis, using as a source.
14:42 < gibalou> but I guess having instructions on how to do this 
would not be legal
14:42 < thedj> VLC is not the based on a proprietary lib
14:42 < thedj> to derive actually means: "to trace the origin of 
14:43 < sam> "derivative work" does not mean that
14:43 < gibalou> if you use a feature from a library then your code is 
"based" on that feature.
14:43 < thedj> this is why derivative was a bad choice. it implies 
14:43 < thedj> sam: yes it does. it means work based on another 
original work
14:43 < sam> OR "contains parts of"
14:45 < sam> you can bypass any legalese by nitpicking ad absurdum; 
however you can never bypass the author's will when there is a 
misunderstanding about the meaning of a sentence in the GPL
14:46 < sam> thedj: when you add support for library B in program A, 
you are creating a derivative work of both A and B; since the code gets 
reinjected into A we keep calling it A, but in essence the derivative 
work is not A, it is "A plus the addition of this particular piece of 
14:46 < thedj> i disagree.
14:46 < thedj> derivative work does not mean.. contains parts of.
14:46 < thedj> not according the dictionaries i have here...
14:47 < thedj> trough process of derivation
14:47 < thedj> by deriving something
14:47 < thedj> that's what is says here.
14:47 < sam> does it say anything about the legal meaning?
14:47 < thedj> and "to derive" is clearly defined with the words origin 
of development.
14:47 < ozone> nothing quite like licensing arguments
14:47 < thedj> sam: no.14:47 < thedj> ozone: :)
14:48 < ozone> i think dynamically loading plugins is rather murky 
14:48 < sam> thedj: I suggest you open *any* legal dictionary and look 
into it
14:48 < sam> http://www.legal-definitions.com/derivative-work.htm14:48 
< sam> http://www.legal-database.com/derivative-work.htm
14:48 < ozone> best to consult a lawyer to find out what to do ... and 
until then, any debate is somewhat irrelevant
14:49 < sam> ozone: this has been discussed for ages by countless law 
advisors for the FSF and other fundations
14:49 < sam> it works as designed
14:49 < gibalou> http://www.linuxjournal.com/article.php?sid=6366
14:50 < sam> the whole KDE fiasco is based exactly on that (and was the 
reason for Qt becoming GPL)
14:50 < ozone> sam: for all countries?
14:51 < sam> ozone: no idea. but copyright law is rather homogeneic 
accross countries
14:51 < thedj> sam: "derivative work" : For copyright purposes, a new 
work based upon an original work to which enough original creative work 
has been added so that the new work represents an original work of 
14:52 < thedj> even the law dicts don't agree :)
14:52 < ozone> sam: i don't know enough about to say anything 
14:52 < thedj> derivative work
14:52 < thedj> : a piece of intellectual property that substantially 
derives from an underlying work
14:52 < sam> they still all agree on implying being based on
14:52 < ozone> but from internal legal counsel that i've heard at work, 
they don't want to go near issues of dynamic loading
14:52 < thedj> yes based on, but not contain parts of.
14:52 < ozone> YMMV, as always
14:53 < sam> thedj: if it didn't contain parts of, it wouldn
14:53 < sam> 't be a derivative work
14:53 < thedj> and that latter definition was from webster dictionary 
of law
14:53 < sam> I don't see your point
14:53 < thedj> based on != contains parts of
14:54 < ozone> anyhoo, have fun arguing guys :)  -> bed for me!
14:54 < thedj> hehe
14:54 < sam> thedj: the latter implies the former; this is more than 
enough for my point
14:55 < thedj> if something is based on something else, it by defintion 
contains parts of.
14:55 < thedj> but if something contains a part of something its not by 
definition based on that.
14:55 -!- Bond128 [~88d7fbb3 at krishna.via.ecp.fr] has joined #videolan
14:56 < thedj> i like these discussions :)
14:56 < sam> you got it mixed up
14:56 < sam> if something contains a part of something it is obviously 
based on it!
14:56 < sam> unless they are sufficiently independent, which they 
aren't here
14:57 < thedj> if my TV contains a button, then my TV is not based on 
buttons. it's based on a katheder diode.
14:58 < sam> please restrict the discussion to software or at least IP
14:58 -!- xxcv [asdf at 203-213-81-61-syd-ts13-2600.tpgi.com.au] has quit 
[Read error: 60 (Operation timed out)]
14:58 < sam> the conccept of a TV is based (amongst others) on the 
concept of a katheder diode.
14:58 < sam> same for buttons
14:59 -!- Bond128 [~88d7fbb3 at krishna.via.ecp.fr] has quit [Client Quit]
15:00 < thedj> yet is your the concept of a TV anything less without a 
button? would you say the concept of TV is derived from the concept of 
15:02 < sam> without a button it would be a different TV
15:02 < thedj> you use buttons to control the TV, but does that make 
the button a part of the concept of a TV.
15:02 < gibalou> maybe not the concept but surely part of the TV ;)
15:02 < sam> if you insist that a TV is not based on the concept of a 
button, you need to call your TV that has buttons "a TV with buttons"
15:03 < gibalou> I guess we can say bye-bye to the atrac decoder ;)
15:03 < thedj> gibalou: derived from vs. part of :)
15:04 < thedj> sam: and i also buy a TV with teletext
15:04 < gibalou> personnaly I agree with sam. The GPL was designed to 
keep the source code free.
15:04 < thedj> or even better a TV with color.
15:04 < gibalou> allowing the use of proprietary libaries would remove 
a big part of that benefit.
15:04 < thedj> gibalou: i do to :)
15:05 < Defaf> when is 0.7.2 due?
15:05 < Defaf> i mean
15:05 < thedj> gibalou: still, from a legal point of view i think you 
could actually make a reasonable case of it....

However as sam said:
you can bypass any legalese by nitpicking ad absurdum; however you can 
never bypass the author's will when there is a misunderstanding about 
the meaning of a sentence in the GPL.

And the opinion of the Authors of VideoLAN has always been very clear. 
A completely Free and Open Source program in it's strictest meaning.

Universiteit Twente
Derk-Jan Hartman (d.hartman at student.utwente dot nl)

This is the vlc-devel mailing-list, see http://www.videolan.org/vlc/
To unsubscribe, please read http://developers.videolan.org/lists.html
If you are in trouble, please contact <postmaster at videolan.org>

More information about the vlc-devel mailing list