win10 下Msys2编译FFmpeg的流程方法

安装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汇编进行优化,以提高性能。但是,这需要额外的编译时间,并可能导致兼容性问题。

相关推荐
张风捷特烈2 小时前
FFmpeg 7.1.1 | 调试 ffmpeg.c 环境 - Widows&Clion&WSL
android·ffmpeg
Antonio91517 小时前
【音视频】视频解码实战
ffmpeg·音视频·aac
薛瑄1 天前
FFmpeg之三 录制音频并保存, API编解码从理论到实战
ffmpeg·音视频·xcode
Antonio9151 天前
【音视频】音频编码实战
ffmpeg·音视频
BO_S__2 天前
python调用ffmpeg对截取视频片段,可批量处理
python·ffmpeg·音视频
Antonio9152 天前
【音视频】⾳频处理基本概念及⾳频重采样
ffmpeg·音视频·aac
Antonio9152 天前
【音视频】AVIO输入模式
ffmpeg·音视频
hunandede2 天前
ffmpeg av_buffer_unref的逻辑实现; av_freep 和 av_freep函数的区别
ffmpeg
邪恶的贝利亚3 天前
一些有关ffmpeg 使用(1)
ffmpeg
RenderNow3 天前
深耕ffmpeg系列之AVFrame
ffmpeg