|
|
|
@ -1,4 +1,4 @@ |
|
|
|
|
#FFmpeg: |
|
|
|
|
# License |
|
|
|
|
|
|
|
|
|
Most files in FFmpeg 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 |
|
|
|
@ -13,16 +13,19 @@ configure to activate them. In this case, FFmpeg's license changes to GPL v2+. |
|
|
|
|
Specifically, the GPL parts of FFmpeg are: |
|
|
|
|
|
|
|
|
|
- libpostproc |
|
|
|
|
- optional x86 optimizations in the files |
|
|
|
|
- optional x86 optimization in the files |
|
|
|
|
- `libavcodec/x86/flac_dsp_gpl.asm` |
|
|
|
|
- `libavcodec/x86/idct_mmx.c` |
|
|
|
|
- `libavfilter/x86/vf_removegrain.asm` |
|
|
|
|
- libutvideo encoding/decoding wrappers in |
|
|
|
|
`libavcodec/libutvideo*.cpp` |
|
|
|
|
- libutvideo encoding/decoding wrappers in `libavcodec/libutvideo*.cpp` |
|
|
|
|
- the X11 grabber in `libavdevice/x11grab.c` |
|
|
|
|
- the swresample test app in |
|
|
|
|
`libswresample/swresample-test.c` |
|
|
|
|
- the `texi2pod.pl` tool |
|
|
|
|
- the following building and testing tools |
|
|
|
|
- `compat/solaris/make_sunver.pl` |
|
|
|
|
- `doc/t2h.pm` |
|
|
|
|
- `doc/texi2pod.pl` |
|
|
|
|
- `libswresample/swresample-test.c` |
|
|
|
|
- `tests/checkasm/*` |
|
|
|
|
- `tests/tiny_ssim.c` |
|
|
|
|
- the following filters in libavfilter: |
|
|
|
|
- `f_ebur128.c` |
|
|
|
|
- `vf_blackframe.c` |
|
|
|
@ -47,9 +50,9 @@ Specifically, the GPL parts of FFmpeg are: |
|
|
|
|
- `vf_pp.c` |
|
|
|
|
- `vf_pp7.c` |
|
|
|
|
- `vf_pullup.c` |
|
|
|
|
- `vf_repeatfields.c` |
|
|
|
|
- `vf_sab.c` |
|
|
|
|
- `vf_smartblur.c` |
|
|
|
|
- `vf_repeatfields.c` |
|
|
|
|
- `vf_spp.c` |
|
|
|
|
- `vf_stereo3d.c` |
|
|
|
|
- `vf_super2xsai.c` |
|
|
|
@ -73,14 +76,12 @@ There are a handful of files under other licensing terms, namely: |
|
|
|
|
* `tests/reference.pnm` is under the expat license. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
external libraries |
|
|
|
|
================== |
|
|
|
|
## External libraries |
|
|
|
|
|
|
|
|
|
FFmpeg can be combined with a number of external libraries, which sometimes |
|
|
|
|
affect the licensing of binaries resulting from the combination. |
|
|
|
|
|
|
|
|
|
compatible libraries |
|
|
|
|
-------------------- |
|
|
|
|
### Compatible libraries |
|
|
|
|
|
|
|
|
|
The following libraries are under GPL: |
|
|
|
|
- frei0r |
|
|
|
@ -101,14 +102,25 @@ 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 FFmpeg, the |
|
|
|
|
license version needs to be upgraded by passing `--enable-version3` to configure. |
|
|
|
|
|
|
|
|
|
incompatible libraries |
|
|
|
|
---------------------- |
|
|
|
|
|
|
|
|
|
The Fraunhofer AAC library and FAAC are under licenses which |
|
|
|
|
are incompatible with the GPLv2 and v3. We do not know for certain if their |
|
|
|
|
licenses are compatible with the LGPL. |
|
|
|
|
If you wish to enable these libraries, pass `--enable-nonfree` to configure. |
|
|
|
|
But note that if you enable any of these libraries the resulting binary will |
|
|
|
|
be under a complex license mix that is more restrictive than the LGPL and that |
|
|
|
|
may result in additional obligations. It is possible that these |
|
|
|
|
restrictions cause the resulting binary to be unredistributeable. |
|
|
|
|
### Incompatible libraries |
|
|
|
|
|
|
|
|
|
There are certain libraries you can combine with FFmpeg whose licenses are not |
|
|
|
|
compatible with the GPL and/or the LGPL. If you wish to enable these |
|
|
|
|
libraries, even in circumstances that their license may be incompatible, pass |
|
|
|
|
`--enable-nonfree` to configure. But note that if you enable any of these |
|
|
|
|
libraries the resulting binary will be under a complex license mix that is |
|
|
|
|
more restrictive than the LGPL and that may result in additional obligations. |
|
|
|
|
It is possible that these restrictions cause the resulting binary to be |
|
|
|
|
unredistributable. |
|
|
|
|
|
|
|
|
|
The Fraunhofer FDK AAC and OpenSSL libraries are under licenses which are |
|
|
|
|
incompatible with the GPLv2 and v3. To the best of our knowledge, they are |
|
|
|
|
compatible with the LGPL. |
|
|
|
|
|
|
|
|
|
The FAAC library is incompatible with all versions of GPL and LGPL. |
|
|
|
|
|
|
|
|
|
The NVENC library, while its header file is licensed under the compatible MIT |
|
|
|
|
license, requires a proprietary binary blob at run time, and is deemed to be |
|
|
|
|
incompatible with the GPL. We are not certain if it is compatible with the |
|
|
|
|
LGPL, but we require `--enable-nonfree` even with LGPL configurations in case |
|
|
|
|
it is not. |
|
|
|
|