ffmpeg 3.4 windows编译安装

准备工作:

msys2安装

官网 MSYS2

ffmpeg 3.4 windows编译安装_第1张图片

下载完成后一直下一步即可,安装完成后windows搜索 MSYS2 启动MSYS2 MINGW64

ffmpeg 3.4 windows编译安装_第2张图片

打开窗口后运行以下命令 下载一些编译需要的东西

#修改源
sed -i "s#mirror.msys2.org/#mirrors.ustc.edu.cn/msys2/#g" /etc/pacman.d/mirrorlist*
pacman -Sy 
 
pacman -S mingw-w64-x86_64-toolchain  #编译64位的库
pacman -S mingw-w64-i686-toolchain # 编译32位的库
pacman -S base-devel    # 一些基本的编译工具
pacman -S yasm nasm     # 汇编器

下载ffmpeg

 官网 FFmpeg 

ffmpeg 3.4 windows编译安装_第3张图片

 一直拉到最下面,这3个download选项随便点 你开心就好

ffmpeg 3.4 windows编译安装_第4张图片

下载x264

官网x264, the best H.264/AVC encoder - VideoLAN

ffmpeg 3.4 windows编译安装_第5张图片

SDL下载

ffmpeg3.4需要的SDL版本是 sdl2 >= 2.0.1 sdl2 < 2.1.0 下载这之间版本的就可以

官网Simple DirectMedia Layer - Homepage

ffmpeg 3.4 windows编译安装_第6张图片

github直接访问Release 2.0.22 · libsdl-org/SDL · GitHub 

ffmpeg 3.4 windows编译安装_第7张图片

随便找一个目录 把下载的东西放进去 解压出来 

ffmpeg 3.4 windows编译安装_第8张图片

编译开始

编译x264:

创建一个x264-build目录,用MSYS2 MINGW64窗口执行下面的命令

cd x264-master
./configure --prefix=D:/shell/x264-build --enable-shared
#使用16线程编译
make -j16
#编译安装
make install

将pkgconfig加入环境变量
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:D:/shell/x264-build/lib/pkgconfig

编译SDL

SDL本身就是编译好的dll,我们需要调整一下对应的目录即可 

我的是64位的系统 所以修改这个文件,如果是32位修改i686-w64-mingw32这个目录ffmpeg 3.4 windows编译安装_第9张图片

 将prefix变量改为你的目录

ffmpeg 3.4 windows编译安装_第10张图片

修改后的样子 

ffmpeg 3.4 windows编译安装_第11张图片

ffmpeg编译

首先指定SDL的目录, 我们需要修改一下configure文件 直接指定

ffmpeg 3.4 windows编译安装_第12张图片

 编辑器搜索SDL2_CONFIG 可以看到里面是有判断版本的逻辑的 版本不对也会导致sdl找不到

ffmpeg 3.4 windows编译安装_第13张图片

 复制SDL2_CONFIG="${cross_prefix}sdl2-config" 将里面的内容改成你的目录

ffmpeg 3.4 windows编译安装_第14张图片

用MSYS2 MINGW64窗口执行下面的命令

#配置环境变量 
#我的cgo调度需要用的 avresample 不需要可以去掉这个选项
./configure --prefix=D:/ffmpeg \
    --enable-gpl \
    --enable-libx264 \
    --disable-static \
    --enable-shared \
    --enable-sdl2 \
    --enable-ffplay \
    --enable-ffprobe \
    --enable-ffmpeg \
    --enable-avresample \
    --extra-cflags="-lD:/shell/x264-build/include" \
    --extra-ldflags="-LD:/shell/x264-build/lib"
#编译
make -j12
#安装
make install

 执行完成后记得将你的ffmpeg最终安装目录的bin 目录加入到环境变量里面 里面有些依赖的dll文件,如果有c程序依赖 把include也加进来

ffmpeg 3.4 windows编译安装_第15张图片

你可能感兴趣的:(GoLang,C/C++,windows,golang,ffmpeg)