2020-12-15

Msys2+FFmpeg编译


 

下载资源,都下载最新版本

Msys2:https://www.msys2.org/

 

FFmpeg :https://ffmpeg.org/download.html#build-windows

 


安装

Msys2 安装配置

 

1、下载Msys2后,一直选择 ”next”,直到安装完成。需要注意的就是安装路径要记得,默认安装在”C:\msys64”目录下。

2、运行Msys2,安装后如果没有自启动,则可到”C:\msys64”目录下,双击运行Msys.exe,如下

(疑问:该步骤完后,直接编译ffmpeg是(修改错误一)可编译通过并且可以使用(依赖msys-2.0.dll),但只能编译64位lib\dll,而且第二次在编译时便编译失败)

 

3、执行pacman -Syu 指令安装相应组件,如提示 [Y/n]?  需要选择Y;如过程中提示部分报无法下载,或者终端自动退出(重新运行Msys2.exe),需要重新执行pacman -Syu,直到,直到所有组件安装完成,如下图

 

4、执行如下命令安装所需依赖包 如过程中出现提示有部分包无法安装是,仍需要重新执行相同指令

pacman -S make  diffutils  yasm  nasm  mingw-w64-x86_64-gcc  mingw-w64-i686-gcc  mingw-w64-x86_64-gtk3  mingw-w64-i686-gtk3 pkg-config git

编译

1、将ffmpeg 源码放到”C:\msys64\opt”目录下或者其他目录下

 

2、执行cmd,跳转到 “C:\msys64” 并执行c:\msys64\msys2_shell.cmd -mingw32”(如编译64位动态库时 参数为 -mingw64

 

 

 

将ffbuild.sh复制到ffmpeg 源码路径下,并赋予执行权限 (chmod -x ffbuild.sh)

编译32位动态库

$ ./ffbuild.sh  32             //---($ ./ffbuild.sh  64)

 

在当前目录下编译结果如下:

 

 


ffmpeg 编译脚本ffbuild.sh (如需要编码等其他模块,自行下载资源并编辑编译脚本)

#!/bin/bash
PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"
PREFIX="./bin-$1"
echo "Install dir: $PREFIX"
./configure \
--prefix=$PREFIX \
--extra-ldsoflags="-static-libgcc" \
--extra-cflags="-I/usr/local/include" \
--extra-ldflags="-L/usr/local/lib" \
--disable-iconv \
--disable-doc \
--disable-debug \
--disable-indevs \
--disable-outdevs \
--disable-postproc \
--disable-ffplay \
--disable-ffprobe \
--disable-encoders \
--disable-decoders \
--enable-avdevice \
--enable-small \
--enable-shared \
--enable-ffmpeg \
--enable-version3 \
--enable-nonfree \
--enable-w32threads \
--enable-avcodec \
--enable-avformat \
--enable-swresample \
--enable-swscale \
--enable-avfilter \
--enable-gpl \
--disable-amf \
--disable-x86asm

make clean
make -j4 
make install

 

如需编译好的动态库(内有vs2019+FFmpeg  demo)
https://download.csdn.net/download/kingsenye/13692787


错误一

 

解决:

 

WEOF 在 <wctype.h> 和 <wchar.h> 头文件中都有定义,它们的含义是相同的。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值