Vitamio与FFmpeg、LGPL、GPL的关系
转自:http://sun.sanniang.me/2014/04/26/the-relationship-vitamio-with-ffmepg-lgp-gpl
Vitamio 使用了 FFmpeg 做为媒体解析器和最主要的解码器,同时开发了针对不同移动平台的硬解码方案,能够完美支持 H.264/AVC、H.263、 MPEG4 等常见的视频编码,覆盖上百种多媒体格式。
有很多开发者错误理解,只要使用FFmpeg库就一定要开源。FFmpeg官方遵循的开源原则 :
FFmpeg is licensed under the GNU Lesser General Public License (LGPL)
version 2.1 or later. However, FFmpeg incorporates several optional parts and optimizations that are covered by the
GNU General Public License (GPL) version 2 or later. If those parts get used the GPL applies to all of FFmpeg.
Read the license texts to learn how this affects programs built on top of FFmpeg or reusing FFmpeg. You may also wish to have a look at the GPL FAQ.
Note that FFmpeg is not available under any other licensing
terms, especially not proprietary/commercial ones, not even in exchange
for payment.
FFmpeg 遵循了LGPL 2.1 的标准,同时某些代码库也遵循了GPL 2.0,我们可以在编译的时候选择遵循的许可协议,Vitamio采用的是FFmpeg的LGPL协议, GNU家对LGPL以及GPL的定义:
LPGL内容主要有两点:
- LPGL允许商业软件通过动态类库引用(Link)方式适用LGPL类库,如.so,.dll等,而不需要开源商业软件代码,采用LGPL协议的开源代码可以被作为类库引用并发布和销售
- 如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生代码都必须采用LPGL协议
Vitamio目前完全遵循LPGL协议,通过Link的方法引用FFmpeg,所以可以作为商业软件销售。其涉及到开源代码参见