Homepage from diego biurrun, robert swain and others, with small changes by me
[ffmpeg-web.git] / src / legal
1 FFMPEG_LEGAL_NAVBAR
2
3 <h1>FFmpeg License and Legal Considerations</h1>
4
5 <p>
6 Legal issues are a constant source of questions and confusion.
7 This is an attempt to clarify the most important issues.
8 The usual disclaimers apply, this is not legal advice.
9 </p>
10
11 <h2>FFmpeg License</h2>
12
13 <p>
14 FFmpeg is licensed under the
15 <a href="http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html">GNU Lesser
16 General Public License (LGPL) version 2.1</a> or later. However, FFmpeg
17 incorporates several optional parts and optimizations that are covered by the
18 <a href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html">GNU General
19 Public License (GPL) version 2</a> or later.
20 If those parts get used the GPL applies to all of FFmpeg.
21 </p>
22
23 <p>
24 Read the license texts to learn how this affects programs built on top
25 of FFmpeg or reusing FFmpeg.  You may also wish to have a look at the
26 <a href="http://www.gnu.org/licenses/gpl-faq.html">GPL FAQ</a>.
27 </p>
28
29 <p>
30 Note that FFmpeg is not available under any other licensing terms,
31 especially not proprietary/commercial ones, not even in exchange for payment.
32 </p>
33
34
35 <h2>License Compliance Checklist</h2>
36
37 <p>
38 The following is a checklist for LGPL compliance when linking against the
39 FFmpeg libraries. It is not the only way to comply with the license, but we
40 think it is the easiest. There are also a few items that are not really related
41 to LGPL compliance but are good ideas anyway.
42 </p>
43
44 <p>
45 You are not obliged by the LGPL to follow this list, but consult a copyright
46 lawyer if you choose not to. If you end up violating the LGPL, you will likely
47 end up on our shame list and/or get sued by us.
48 </p>
49
50 <ol>
51 <li> Compile FFmpeg <b>without</b> "--enable-gpl" and
52 <b>without</b> "--enable-nonfree".</li>
53 <li> Use dynamic linking (on windows, this means linking to dlls) for linking
54 with FFmpeg libraries. </li>
55 <li> Distribute the source code of FFmpeg, no matter if you modified it or not.
56 </li>
57 <li> Make sure the source code corresponds exactly to the library binaries
58 you are distributing. </li>
59 <li> Run the command "svn diff . libswscale > changes.diff" in the root
60 directory of the FFmpeg source code to create a file with only the changes.</li>
61 <li> Explain how you compiled FFmpeg, for example the configure line, in a text
62 file added to the root directory of the source code. </li>
63 <li> Use tarball or a zip file for distributing the source code. </li>
64 <li> Host the FFmpeg source code on the same webserver as the binary you are
65 distributing. </li>
66 <li> Add "This software uses code of &#60;a href=http://ffmpeg.org&#62;FFmpeg&#60;/a&#62; licensed under the &#60;a href=http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html&#62;LGPLv2.1&#60;/a&#62; and its source can be downloaded &#60;a href=link_to_your_sources&#62;here&#60;/a&#62;" to every page in your website where there is a download link to your application. </li>
67 <li> Mention "This software uses libraries from the FFmpeg project under the
68 LGPLv2.1" in your program "about box". </li>
69 <li> Mention in your EULA that your program uses FFmpeg under the LGPLv2.1.</li>
70 <li> If your EULA claims ownership over the code, you have to <b>explicitly</b>
71 mention that you do not own FFmpeg, and where the relevant owners can be
72 found.</li>
73 <li> Remove any prohibition of reverse engineering from your EULA.</li>
74 <li> Apply the same changes to all translations of your EULA.</li>
75 <li> Do not misspell FFmpeg (two capitals F and lowercase "mpeg").</li>
76 <li> Do not rename FFmpeg dlls to some obfuscated name, but adding a suffix or
77 prefix is fine (renaming "avcodec.dll" to "MyProgDec.dll" is not fine, but to
78 "avcodec-MyProg.dll" is).</li>
79 <li> Go through all the items again for any LGPL external library you compiled
80 into FFmpeg (for example LAME).</li>
81 <li> Make sure your program is not using any GPL libraries
82 (notably libx264).</li>
83 </ol>
84
85
86 <h2>Trademark</h2>
87 <p>
88 FFmpeg is a trademark of Fabrice Bellard, originator of the FFmpeg project.
89 </p>
90
91 <h2>Patent Mini-FAQ</h2>
92 <p>
93 A lot of legal questions surrounding patents arise when discussing multimedia
94 technology. This
95 mini-FAQ attempts to address these issues. Note that much of this discussion
96 is based on <i>precedent</i>, or what has happened in the past under similar
97 circumstances. Very little consideration is given to <i>what could happen</i>.
98 If you use your imagination, you can visualize any dire scenario and cease
99 doing any productive work.
100 </p>
101
102 <p>
103 <b>Q: Does FFmpeg use patented algorithms?</b>
104 <br />
105 A: We do not know, we are not lawyers so we are not qualified to answer
106 this. Also we have never read patents to implement any part of FFmpeg,
107 so even if we were qualified we could not answer it as we do not know
108 what is patented. Furthermore the sheer number of software patents makes it
109 impossible to read them all so no one (lawyer or not) could answer
110 such a question with a definite no, those who do lie.
111 What we do know is that various standards FFmpeg supports contain vague
112 hints that any conforming implementation might be subject to some patent
113 rights in some jurisdictions, examples for such statements are:
114 <br />
115 For H.264:
116 </p>
117 <blockquote>
118 <p>
119 ITU draws attention to the possibility that the practice or implementation of this Recommendation may
120 involve the use of a claimed Intellectual Property Right. ITU takes no position concerning the evidence,
121 validity or applicability of claimed Intellectual Property Rights, whether asserted by ITU members or others
122 outside of the Recommendation development process.
123 </p>
124 </blockquote>
125 <p>
126 And for MPEG-4:
127 </p>
128 <blockquote>
129 <p>
130 The user's attention is called to the possibility that, for some of the processes specified in this part of ISO/IEC
131 14496, conformance with this specification may require use of an invention covered by patent rights.
132 By publication of this part of ISO/IEC 14496, no position is taken with respect to the validity of this claim or of any
133 patent rights in connection therewith.
134 </p>
135 </blockquote>
136
137 <p>
138 <b>Q: Is it safe to use such patented algorithms?</b>
139 <br />
140 A: Patent laws vary wildly between jurisdictions, and in many countries
141 patents on algorithms are not recognized. Plus the use of patents to
142 prevent the usage of a format or codec on a specific operating system
143 or together with specific other software might violate antitrust laws.
144 So whether you are safe or not depends on where you live and how judges
145 interpret the law in your jurisdiction.
146 </p>
147
148 <p>
149 <b>Q: Bottom line: Should I be worried about patent issues if I use FFmpeg?</b>
150 <br />
151 A: Are you a private user working with FFmpeg for your own personal purposes?
152 If so, there is remarkably little reason to be concerned. Are you using FFmpeg
153 in a commercial software product? Read on to the next question...
154 </p>
155
156 <p>
157 <b>Q: Is it perfectly alright to
158 incorporate the whole FFmpeg core into my own commercial product?</b>
159 <br />
160 A: You might have a problem here. There have been cases where companies
161 have used FFmpeg in their products. These companies found out that once
162 you start trying to make money from patented technologies, the owners of
163 the patents will come after their licensing fees. Notably, MPEG LA is
164 vigilant and diligent about collecting for MPEG-related technologies.
165 </p>