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

相关推荐
七夜zippoe1 天前
Spring Data JPA原理与实战 Repository接口的魔法揭秘
java·ffmpeg·事务·jpa·repository
Benny的老巢1 天前
n8n工作流中FFmpeg 视频截取失败排查:文件路径和参数顺序错误解决方案
chrome·ffmpeg·音视频
RockWang.2 天前
【配置】FFmpeg配置环境ubuntu踩坑记录。
ffmpeg
王者鳜錸2 天前
Java使用FFmpeg获取音频文件时长:完整实现与原理详解
java·开发语言·ffmpeg·音频时长
桃杬2 天前
用现代 C++ 封装 FFmpeg:从摄像头采集到 H.264 编码的完整实践
c++·ffmpeg·h.264
cvcode_study3 天前
FFmpeg 工具基础
ffmpeg
1nv1s1ble3 天前
记录一个`ffmpeg`的`swscale`库crash的例子
ffmpeg
CodeOfCC3 天前
C++ 实现ffmpeg解析hls fmp4 EXT-X-DISCONTINUITY并支持定位
开发语言·c++·ffmpeg·音视频
Java程序员 拥抱ai3 天前
SpringBoot + FFmpeg + Redis:视频转码、截图、水印异步处理平台搭建
spring boot·redis·ffmpeg
给算法爸爸上香3 天前
yolo tensorrt视频流检测软解码和硬解码
yolo·ffmpeg·视频编解码·tensorrt·nvcodec