安装Msys
MSYS2官网
安装...
将\msys64\usr\bin加入环境变量
Mysy2中输入
pacman --Syu
pacman --Su
pacman -S git patch unzip
pacman -S mingw-w64-x86_64-toolchain
pacman -S mingw-w64-x86_64-yasm
pacman -S mingw-w64-x86_64-SDL2
pacman -S mingw-w64-x86_64-fdk-aac
pacman -S mingw-w64-x86_64-x264
pacman -S mingw-w64-x86_64-x265
安装make
pacman -S make
查看是否被安装
pacman -Q gcc
安装GCC
pacman -S gcc
查看gcc安装路径
which gcc
进入FFmpeg文件夹
cd /f/ffmpeg
生成Makefile(这里要在MSYS2 MINGW64中进行),回车后会有一段时间没有什么反馈,别急,等等。
./configure --prefix=C/ffmpeg --enable-shared --disable-static --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-libx265
编译/安装
make -j8 && make install
安装后将c:\ffmpeg\bin加入环境变量
vs中头文件include,库文件bin,依赖名lib
如果缺少xxx.dll去\msys64\mingw64\bin中找
libwinpthread-1.dll
SDL2.dll
zlib1.dll
liblzma-5.dll
libbz2-1.dll
libiconv-2.dll
libgcc_s_seh-1.dll
libstdc++-6.dll
libx265.dll
libx264-164.dll
libfdk-aac-2.dll
-
./configure
:这是一个脚本,用于配置FFmpeg的编译选项。它会检查你的系统上是否有编译FFmpeg所需的库和工具,并根据你指定的选项来生成Makefile。 -
--prefix=/c/FFmpeg
:这个选项指定了安装路径。编译完成后,所有的文件(包括可执行文件、库和头文件)都会被安装到这个路径。在这里,/c/FFmpeg
对应的Windows路径是C:\FFmpeg
。 -
--disable-static
:这个选项禁用了静态库的构建。静态库是一种包含了多个对象文件的库,可以在链接阶段被完全集成到可执行文件中。 -
--enable-shared
:这个选项启用了共享库的构建。共享库是一种可以被多个程序共享的库,它们在运行时被动态加载到内存中。 -
--enable-version3
:这个选项启用了版本3的API。FFmpeg的API有多个版本,不同的版本有不同的功能和兼容性。 -
--disable-ffplay
:这个选项禁用了ffplay的构建。ffplay是FFmpeg项目的一部分,是一个简单的媒体播放器。 -
--enable-ffmpeg
:这个选项启用了ffmpeg的构建。ffmpeg是FFmpeg项目的核心,是一个用于处理多媒体数据的命令行工具。 -
--disable-x86asm
:这个选项禁用了对x86汇编的优化。一些FFmpeg的功能可以使用x86汇编进行优化,以提高性能。但是,这需要额外的编译时间,并可能导致兼容性问题。