X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=LICENSE;h=1074989bfc78f6693e63722df6b1d830437ca2b7;hb=8e401dbe90cc77b1f3067a917d9fa48cefa3fcdb;hp=a5c569040aa7bada9b0570f7bc6fcd760cc68e4c;hpb=ecc1330a6dfb074e637a3ea9e05e16c767587c97;p=ffmpeg diff --git a/LICENSE b/LICENSE index a5c569040aa..1074989bfc7 100644 --- a/LICENSE +++ b/LICENSE @@ -1,33 +1,66 @@ -Most files in FFmpeg are under the GNU Lesser General Public License version 2.1 +Libav: +====== + +Most files in Libav are under the GNU Lesser General Public License version 2.1 or later (LGPL v2.1+). Read the file COPYING.LGPLv2.1 for details. Some other files have MIT/X11/BSD-style licenses. In combination the LGPL v2.1+ applies to -FFmpeg. +Libav. -Some optional parts of FFmpeg are licensed under the GNU General Public License +Some optional parts of Libav are licensed under the GNU General Public License version 2 or later (GPL v2+). See the file COPYING.GPLv2 for details. None of these parts are used by default, you have to explicitly pass --enable-gpl to -configure to activate them. In this case, FFmpeg's license changes to GPL v2+. +configure to activate them. In this case, Libav's license changes to GPL v2+. -Specifically, the GPL parts of FFmpeg are +Specifically, the GPL parts of Libav are -- libpostproc -- some x86 optimizations in libswscale -- optional x86 optimizations in the files - libavcodec/x86/h264_deblock_sse2.asm - libavcodec/x86/h264_idct_sse2.asm - libavcodec/x86/idct_mmx.c - the X11 grabber in libavdevice/x11grab.c +- the texi2pod.pl tool +- the following filters in libavfilter: + - vf_blackframe.c + - vf_boxblur.c + - vf_cropdetect.c + - vf_delogo.c + - vf_hqdn3d.c + - vf_yadif.c -Some external libraries, e.g. libx264, are under GPL and can be used in -conjunction with FFmpeg. They require --enable-gpl to be passed to configure -as well. - -The nonfree external libraries libamrnb, libamrwb and libfaac can be hooked up -in FFmpeg. You need to pass --enable-nonfree to configure to enable them. Employ -this option with care as FFmpeg then becomes nonfree and unredistributable. -Note that libfaac claims to be LGPL, but is not. +Should you, for whatever reason, prefer to use version 3 of the (L)GPL, then +the configure parameter --enable-version3 will activate this licensing option +for you. Read the file COPYING.LGPLv3 or, if you have enabled GPL parts, +COPYING.GPLv3 to learn the exact legal terms that apply in this case. There are a handful of files under other licensing terms, namely: -* The files libavcodec/jfdctfst.c, libavcodec/jfdctint.c, libavcodec/jrevdct.c - are taken from libjpeg, see the top of the files for licensing details. +* The files libavcodec/jfdctfst.c, libavcodec/jfdctint_template.c and + libavcodec/jrevdct.c are taken from libjpeg, see the top of the files for + licensing details. Specifically note that you must credit the IJG in the + documentation accompanying your program if you only distribute executables. + You must also indicate any changes including additions and deletions to + those three files in the documentation. + + +external libraries +================== + +Libav can be combined with a number of external libraries, which sometimes +affect the licensing of binaries resulting from the combination. + +compatible libraries +-------------------- + +The libcdio, libx264, libxavs and libxvid libraries are under GPL. When +combining them with Libav, Libav needs to be licensed as GPL as well by +passing --enable-gpl to configure. + +The OpenCORE and VisualOn libraries are under the Apache License 2.0. That +license is incompatible with the LGPL v2.1 and the GPL v2, but not with +version 3 of those licenses. So to combine these libraries with Libav, the +license version needs to be upgraded by passing --enable-version3 to configure. + +incompatible libraries +---------------------- + +The Fraunhofer AAC library, FAAC and OpenSSL are under licenses incompatible +with all (L)GPL versions. Thus, unfortunately, since both licenses cannot be +satisfied simultaneously, binaries resulting from the combination of Libav +with these libraries are nonfree und unredistributable. If you wish to enable +any of these libraries nonetheless, pass --enable-nonfree to configure.