FFmpeg 许可和法律注意事项
法律问题是疑问和困惑的常见来源。本文尝试澄清最重要的问题。通常的免责声明适用,这并非法律建议。
FFmpeg 许可证
FFmpeg 在 GNU 宽通用公共许可证 (LGPL) 2.1 版本或更高版本下获得许可。但是,FFmpeg 包含一些可选部分和优化,这些部分和优化受 GNU 通用公共许可证 (GPL) 2 版本或更高版本约束。如果使用了这些部分,则 GPL 适用于所有 FFmpeg。
请阅读许可证文本,了解这如何影响在 FFmpeg 之上构建或重用 FFmpeg 的程序。您也可以查看 GPL 常见问题解答。
请注意,FFmpeg 不在任何其他许可条款下提供,尤其是不在专有/商业条款下提供,即使付费也不行。
许可证合规性清单
以下是链接到 FFmpeg 库时 LGPL 合规性的检查清单。这不是符合许可证的唯一方法,但我们认为这是最简单的方法。还有一些项目与 LGPL 合规性没有真正关系,但无论如何都是好主意。
- 编译 FFmpeg 时不带 "--enable-gpl" 并且不带 "--enable-nonfree"。
- 使用动态链接(在 Windows 上,这意味着链接到 DLL)与 FFmpeg 库链接。
- 分发 FFmpeg 的源代码,无论您是否对其进行了修改。
- 确保源代码与您正在分发的库二进制文件完全对应。
- 在 FFmpeg 源代码的根目录中运行命令 "git diff > changes.diff" 以创建一个仅包含更改的文件。
- 在添加到源代码根目录的文本文件中,解释您如何编译 FFmpeg,例如配置行。
- 使用 tarball 或 zip 文件分发源代码。
- 将 FFmpeg 源代码托管在与您正在分发的二进制文件相同的 Web 服务器上。
- 在您网站上的每个包含应用程序下载链接的页面中添加“本软件使用 FFmpeg 的代码,该代码在 LGPLv2.1 下获得许可,其源代码可以在 此处 下载”。
- 在您的程序“关于框”中提及“本软件使用来自 LGPLv2.1 下的 FFmpeg 项目的库”。
- 在您的最终用户许可协议 (EULA) 中提及您的程序在 LGPLv2.1 下使用 FFmpeg。
- 如果您的 EULA 声称拥有代码的所有权,您必须明确说明您不拥有 FFmpeg,以及在哪里可以找到相关的所有者。
- 从您的 EULA 中删除任何禁止反向工程的条款。
- 对您的 EULA 的所有翻译应用相同的更改。
- 不要拼错 FFmpeg(两个大写 F 和小写“mpeg”)。
- 不要将 FFmpeg dll 重命名为某些混淆的名称,但添加后缀或前缀是可以的(将“avcodec.dll”重命名为“MyProgDec.dll”是不行的,但重命名为“avcodec-MyProg.dll”是可以的)。
- 对于您编译到 FFmpeg 中的任何 LGPL 外部库(例如 LAME),再次检查所有项目。
- 确保您的程序未使用任何 GPL 库(尤其是 libx264)。
商标
FFmpeg 是 FFmpeg 项目的创始人 Fabrice Bellard 的商标。
专利迷你常见问题
在讨论多媒体技术时,会出现许多围绕专利的法律问题。本迷你常见问题解答试图解决这些问题。请注意,此讨论的大部分内容基于先例,或者在类似情况下过去发生的事情。很少考虑可能发生什么。如果您发挥想象力,您可能会设想出任何可怕的情况并停止做任何有成效的工作。
问:FFmpeg 使用了专利算法吗?
答:我们不知道,我们不是律师,因此我们没有资格回答这个问题。此外,我们从未阅读过专利以实现 FFmpeg 的任何部分,因此即使我们有资格,我们也无法回答,因为我们不知道哪些已获得专利。此外,软件专利的数量之多,使得不可能全部阅读,因此没有人(律师与否)可以明确地回答这样的问题,那些回答的人在撒谎。我们所知道的是,FFmpeg 支持的各种标准包含模糊的暗示,即任何符合标准的实现都可能在某些司法管辖区受到某些专利权的约束,此类声明的示例包括:
对于 H.264
国际电联提请注意,本建议的实践或实施可能涉及使用所声明的知识产权。国际电联对国际电联成员或其他在建议制定过程之外的人员主张的知识产权的证据、有效性或适用性不持任何立场。
对于 MPEG-4
提醒用户注意,对于 ISO/IEC 14496 本部分中指定的一些过程,符合本规范可能需要使用专利权涵盖的发明。通过发布 ISO/IEC 14496 的本部分,不对该主张或与之相关的任何专利权的有效性采取任何立场。
问:使用此类专利算法是否安全?
答:专利法在不同司法管辖区之间差异很大,并且在许多国家/地区,算法专利未被认可。此外,使用专利来阻止在特定操作系统上或与特定其他软件一起使用格式或编解码器可能违反反垄断法。因此,您是否安全取决于您居住的地方以及法官如何在您的司法管辖区中解释法律。
问:底线:如果我使用 FFmpeg,我应该担心专利问题吗?
答:您是为个人目的使用 FFmpeg 的私人用户吗?如果是这样,则几乎没有理由担心。您是否在商业软件产品中使用 FFmpeg?请阅读下一个问题...
问:将整个 FFmpeg 内核合并到我自己的商业产品中完全可以吗?
答:您可能在这里遇到了问题。以前有公司在其产品中使用 FFmpeg 的案例。这些公司发现,一旦您开始尝试从专利技术中赚钱,专利的所有者就会来收取他们的许可费。值得注意的是,MPEG LA 在收集与 MPEG 相关的技术方面警惕而勤奋。
由 telepoint.bg 提供托管服务