就在刚刚,FFmpeg 在社交媒体公开感谢腾讯公司向项目提交的高质量补丁。这称得上是历史性时刻 —— 毕竟 15 年前,腾讯的知名产品 QQ 影音因不遵循开源协议使用代码被 FFmpeg 钉在了 “耻辱柱”(Hall of Shame)。
事件背景
FFmpeg 全称为 FastForwardMPEG (Moving Picture Experts Group),由神一般的开发者 —— 法国程序员法布里斯・贝拉(Fabrice Bellard)创建并开源。其最早诞生于 2000 年,是用户量最大的音视频编解码套件,全球 90% 以上的音视频软件是采用 FFmpeg 作为基础库进行音视频相关的功能支持,它包含丰富的封装格式支持、编解码格式支持、网络协议支持、滤镜支持等模块支持,具有较好的可移植性。
FFmpeg 采用LGPL 和 GPL 开源许可证(具体依据所选的组件)公开源代码,任何人都可以在遵守协议的情况下自由使用 FFmpeg,而且不收费。
简单总结 FFmpeg 的优点就是:功能强大、代码开源、免费使用 —— 很难不让人 “白嫖”。
PC 互联网时代,许多播放器软件使用了 FFmpeg 的代码后并没有遵守开源协议公开任何源代码。FFmpeg 社区便将违反开源协议的公司、组织和个人网站贴在 “耻辱柱”。他们解释称,这是一份违反 FFmpeg 许可证的项目或公司名单。他们希望通过公开羞辱这些项目或公司来促使其遵守许可条款。
这其中不乏一些知名产品,比如韩国播放软件 KMPlayer 以及国产播放器暴风影音、QQ 影音都被列入 “FFmpeg 耻辱柱”。
据介绍,2009 年 11 月,网友 roozhou 向 FFmpeg 举报,指出 QQ 影音的 credit 只给出了修改的 FFmpeg 源码下载,声称是 LGPL 许可证。但实际是修改过的 ffdshow—— 采用的是 GPL 许可证。同日,另一位用户 cehoyos 下载了 QQ 软件,用 7z 解压之后发现其安装程序内包含了大量的开源和私有解码器的 dll:libavcodec, libx264 等等。之后 QQ 影音被正式加入到 “FFmpeg 耻辱柱” 名单之列。
被钉在 “耻辱柱” 一年多后,腾讯终于将手机 QQ 影音修改的 FFmpeg 源代码进行了公开。
“耻辱柱” 计划于 2011 年上半年下线,不过其网页源码仍保留这些名单。
(https://github.com/FFmpeg/web/blob/master/src/shame)