Commit | Line | Data |
---|---|---|
4656c375 DB |
1 | FFmpeg: |
2 | ------- | |
3 | ||
aae9c405 | 4 | Most files in FFmpeg are under the GNU Lesser General Public License version 2.1 |
ecc1330a DB |
5 | or later (LGPL v2.1+). Read the file COPYING.LGPLv2.1 for details. Some other |
6 | files have MIT/X11/BSD-style licenses. In combination the LGPL v2.1+ applies to | |
aae9c405 DB |
7 | FFmpeg. |
8 | ||
9 | Some optional parts of FFmpeg are licensed under the GNU General Public License | |
ecc1330a | 10 | version 2 or later (GPL v2+). See the file COPYING.GPLv2 for details. None of |
aae9c405 DB |
11 | these parts are used by default, you have to explicitly pass --enable-gpl to |
12 | configure to activate them. In this case, FFmpeg's license changes to GPL v2+. | |
13 | ||
14 | Specifically, the GPL parts of FFmpeg are | |
15 | ||
16 | - libpostproc | |
c271ad21 DB |
17 | - optional MMX optimizations for YUV to RGB colorspace conversion in |
18 | libswscale/x86/yuv2rgb_template.c | |
aae9c405 DB |
19 | - optional x86 optimizations in the files |
20 | libavcodec/x86/h264_deblock_sse2.asm | |
21 | libavcodec/x86/h264_idct_sse2.asm | |
22 | libavcodec/x86/idct_mmx.c | |
aae9c405 DB |
23 | - the X11 grabber in libavdevice/x11grab.c |
24 | ||
4656c375 DB |
25 | There are a handful of files under other licensing terms, namely: |
26 | ||
27 | * The files libavcodec/jfdctfst.c, libavcodec/jfdctint.c, libavcodec/jrevdct.c | |
28 | are taken from libjpeg, see the top of the files for licensing details. | |
29 | ||
9cad0e4e DB |
30 | Should you, for whatever reason, prefer to use version 3 of the (L)GPL, then |
31 | the configure parameter --enable-version3 will activate this licensing option | |
32 | for you. Read the file COPYING.LGPLv3 or, if you have enabled GPL parts, | |
33 | COPYING.GPLv3 to learn the exact legal terms that apply in this case. | |
34 | ||
4656c375 DB |
35 | |
36 | external libraries: | |
37 | ------------------- | |
38 | ||
aae9c405 DB |
39 | Some external libraries, e.g. libx264, are under GPL and can be used in |
40 | conjunction with FFmpeg. They require --enable-gpl to be passed to configure | |
41 | as well. | |
42 | ||
0b175caa DB |
43 | The OpenCORE external libraries are under the Apache License 2.0. That license |
44 | is incompatible with the LGPL v2.1 and the GPL v2, but not with version 3 of | |
45 | those licenses. So to combine the OpenCORE libraries with FFmpeg, the license | |
46 | version needs to be upgraded by passing --enable-version3 to configure. | |
47 | ||
fc1206a4 DB |
48 | The nonfree external library libfaac can be hooked up in FFmpeg. You need to |
49 | pass --enable-nonfree to configure to enable it. Employ this option with care | |
50 | as FFmpeg then becomes nonfree and unredistributable. |