[FFmpeg-devel] [PATCH] configure: accept commercially-licensed libx264

Jason Garrett-Glaser jason
Wed Dec 8 09:53:37 CET 2010

On Wed, Dec 8, 2010 at 12:38 AM, Alex Converse <alex.converse at gmail.com> wrote:
> On Wed, Dec 8, 2010 at 12:32 AM, Jason Garrett-Glaser <jason at x264.com> wrote:
>> On Tue, Dec 7, 2010 at 9:57 AM, Carl Eugen Hoyos <cehoyos at ag.or.at> wrote:
>>> Ramiro Polla <ramiro.polla <at> gmail.com> writes:
>>>> libx264 can be built with --disable-gpl, to be used with a commercial
>>>> license, which will export X264_GPL as 0 in their config file.
>>>> Attached patch makes configure accept that.
>>> Could you explain the use-case for this change?
>>> Why would somebody prefer a shipped version of x264 (that I would expect to come
>>> without headers) over the free version that we support?
>>> Carl Eugen
>> ffmpeg is LGPL.
>> If someone buys a commercial license to x264, they can link x264 to
>> ffmpeg without resulting in a GPL end product. ?This has already been
>> requested by at least one customer.
>> Currently, they have to use --enable-gpl, which they shouldn't have
>> to, as there's no GPL involved in this case.
>> The "commercially licensed" x264 comes with all the source and headers
>> -- it's the exact same thing, compiled with --disable-gpl.
> Not to be a dick, just looking for a clarification....
> How does this differ from FFmpeg with any other non-free library?
> Thanks,
> Alex

Normally, libx264 is GPL.  It cannot be linked against ffmpeg unless
ffmpeg is GPL.  Therefore, ffmpeg requires --enable-gpl to use libx264

Now, it's possible for libx264 to be not GPL.  It can be linked
against ffmpeg if ffmpeg is LGPL.  It cannot be linked against ffmpeg
if ffmpeg is GPL, because that would require that libx264 be GPL.
This is no different to linking against a *legal* nonfree library.

This is *not* like libfaac.  libfaac is nonfree because it isn't
GPL-compatible at all; the terms of its license mean it cannot be
linked with ffmpeg, GPL or LGPL.  Non-GPL libx264, unlike faac, can be
legally linked against ffmpeg and integrated into a product.

In short: it's exactly as if someone was linking ffmpeg against a
proprietary application, like many of the commercial proprietary
applications that use ffmpeg.  Obviously, they don't want to use
--enable-gpl when doing that!


More information about the ffmpeg-devel mailing list