shared 版是动态库版,ffmpeg 的 tools(ffmpeg、ffmplay、ffmprobe)没有将动态库包含在内,3个可执行文件执行时动态加在可执行文件。 无share 版是静态库版,三个 tools 里包含了库文件,所以非 share 版要比 share 版大很多。 gpl 版和 lgpl 版指gpl、lgpl 两种开源协议: GPL 版(GNU General Public License):...
“gpl”与“lgpl”标记的两个版本,区别在于选用的许可协议不同——GPL版本支持的编解码器相对更多。(有些编解码器采用GPL。这种协议相当严格,意味着只有当FFmpeg自己也选用GPL时,才能把这些编解码器整合到程序里。) 图10 向下拉,找到Windows版本的下载链接。注意下载方框内标出的“shared”版本。 我们优先选择GPL版...
Licensing options: --enable-gpl allow use of GPL code, the resulting libs [允许使用GPL] andbinaries will be under GPL [no] --enable-version3 upgrade (L)GPL to version 3 [no] 更新GPL版本 --enable-nonfree allow use of nonfree code, the resulting libs andbinaries will be unredistributabl...
授权选项:–enable-version3,–enable-gpl,–enable-nofree。代码的缺省授权是LGPL v2,如果要使用以LGPL v3、GPL授权的模块或者某些不遵循自有软件授权协议的模块,必须在运行configure时显式使能相应的选项。 编译、链接选项。例:–disable-static,–enable-shared,…… 缺省配置是生成静态库而不生成动态库,如果希望禁...
尽管FFmpeg 功能强大,但是由于其采用的是带有传染性的 LGPL/GPL 开源协议,所以一些大厂基本上都是自己独立开发类似的音视频处理库,甚至在接口和组织模块上模仿 FFmpeg 。 因此,学习 FFmpeg 不仅能够帮助你掌握音视频开发的相关知识脉络,还能让你快速适应不同的音视频处理框架。
2. gpl 和 lgpl 是指采用不同的分发协议,上面介绍过了。3. shared 是指采用共享库文件,体积较小,但系统中必须有这些共享库文件才能运行。不带 shared ,是指库已经静态编译到程序中,不需要共享库支持,所以体积大一些。 综上所述,适合大部分Win系统读者下载的是 ffmpeg-master-latest-win64-gpl.zip ,如有...
不过,虽然说是免费使用,但FFmpeg是基于LGPL/GPL开源的,这意味着如果某软件使用了FFmpeg的代码,那么这个软件涉及这些代码的部分,也必须开源,并且需要在使用其项目源代码和编解码库时注明来源。目前,FFmpeg不仅被大量免费软件使用,同时使用的,还有很多大型公司,例如:YouTube、iTunes、腾讯旗下产品、字节跳动旗下产品等。
- --enable-shared:启用共享库的编译,生成.so文件,可以被其他程序调用。 - --enable-static:启用静态库的编译,生成.a文件,可以被其他程序静态链接。 - --enable-gpl:启用GPL许可证的代码。 - --enable-version3:启用LGPLv3许可证的代码。 - --enable-libx264:启用x264编解码器。
ffmpeg-master-latest-linuxarm64-lgpl-shared.tar.xz 40.4 MB2025-04-28T13:38:36Z ffmpeg-master-latest-linuxarm64-lgpl.tar.xz 83.5 MB2025-04-28T13:38:37Z ffmpeg-master-latest-win64-gpl-shared.zip 63.6 MB2025-04-28T13:38:37Z Source code(zip) ...
尽管FFmpeg 功能强大,但是由于其采用的是带有传染性的 LGPL/GPL 开源协议,所以一些大厂基本上都是自己独立开发类似的音视频处理库,甚至在接口和组织模块上模仿 FFmpeg 。 因此,学习 FFmpeg 不仅能够帮助你掌握音视频开发的相关知识脉络,还能让你快速适应不同的音视频处理框架。