[Libav-user] reduce dll size
i.like.privacy.too at gmail.com
Tue Mar 11 04:45:29 CET 2014
On 03/10/2014 07:39 PM, Carl Eugen Hoyos wrote:
> Camera Man <i.like.privacy.too at ...> writes:
>> However, the license (LGPL) requires that you let
>> user upgrade the library without your help. That is
>> usually easy to achieve when you ship .dlls, but
>> not as easy when you do static linking. If you use
>> a GPL component (e.g. the x264 encoder), you will
>> need to make your project GPL as well
> But I wonder now if there is a reason that your next
> sentence speaks about the GPL: Don't you agree that it
> makes no difference if you link GPL'd libraries
> statically or dynamically?
Yes, I definitely agree - if the project is GPL, the linking (and in
fact, binary form) shouldn't matter - the distribution should
effectively (either directly, or by a direct immediate offer) include a
I specifically mentioned GPL in the context of the x264 encoder (which
is GPL licensed) to emphasize that the earlier discussion about the LGPL
of "just making it possible to replace the .dll" does NOT apply once GPL
components are involved - and x264 is one such GPL component.
Summary of my understanding:
If only LGPL ("plain" ffmpeg, for example) code is involved, then the
requirement is to let user update LGPL components on their own. One way
to achieve that is to use the LGPL code in a .so/.dll which can be
replaced (however, care must be taken to make this feasible - e.g., any
changes applied to ffmpeg must be provided to the end user in source form).
Once GPL code is involved (e.g. the libx264 encoder), then the
requirement is for the user to be able to rebuild everything from
source -- effectively, to provide complete usable source code for the
entire project that uses said code, which must also be licensed under
the GPL itself.
I'm not a lawyer, and if one releases software, one should consult legal
advice competent in copyrights and in the relevant jurisdiction.
Carl, thanks for all the work on ffmpeg and the help you provide on the
More information about the Libav-user