课程名称:音视频基础+ffmpeg原理 入门音视频技术开发
课程章节:在不同的系统上编译 ffmpeg
课程讲师:李超
课程内容
Windows下编译 ffmpeg 的常用工具:
- Cygwin (Cygnus Windows )
- MinGW (Minimalist GNW for Windows)
- VS(Visual Studio 2015/2017)
- MSYS2(Minimal SYStem 2)
1.Cygwin
Cygwin 是 Cygnus 这家公司的产品,它是 Windows 的一个软件,通过 Cygwin 可以在 Windows 系统上模拟 Linux 环境,使用 Cygwin 编译 ffmpeg 的方式和 Linux、Max 下类似。
2.MinGW
Windows 下模仿 Linux 的编译工具,只是将接口变为 Windows 的接口,程序完全是 Windows 程序。
3.VS
Windows 原生的编译器
4.如何在 Windows 下编译 ffmpeg
-
Cygwin 直接散装使用。
底层机制是 Cygwin 实现了 Linux 与 Windows API转换,在 Cygwin上运行的 Linux 程序,对应会调用一系列Windows 的 API。达到与 Linux 同等的效果,使得 Linux 程序能够在 Windows 下跑起来了。所以用 Cygwin编译的程序,必须绑定一个 Cygwin 的库,否则跑不起来。正是因为有一层转换,所以运行速度比原生的慢。 -
MinGW + MSY32,官方推荐的方式
Mingw 是工具链,Msys2 是环境,所以编译出来的文件不需要中间的库,编译方式与 Linux 编译方式一致,编译出来的程序又不依赖于第三方的程序。 -
VS + MSY32,将编译链换为 VS 的编译链,这种方式适合对 VS 编译链熟悉的人,这种方式编译生成 ffplay 的时候比较麻烦。