ffmpeg (ShiftMediaProject) 静态编译

        在这里记录在windows下编译ffmpeg静态库时遇到的一些问题,本文使用vs2019进行编译。
ffmpeg编译相关的介绍参考这篇文章:vs2019编译ffmpeg源码为静态库动态库【完整步骤、亲测可行】_vs2019 ffmpeg-CSDN博客

1、资源下载

根据以上文章下载相关资源和依赖库,一些网络不好的同学在下载依赖库的时候会卡壳,我在这里也顺便附上我下载好的的资源,同步的是当前github上最新的代码(2024.1.30),百度网盘链接 提取码:ue5d

为了减少编译时间,工程中我移除掉了Program,如果需要编译可执行程序的,自行添加。

2、静态编译

        第一步,修改运行时库为MT/MTd,但这样编译出来的库在用的时候发现还是会报错:error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MD_DynamicRelease”

        

        

        观察了下,报错的obj全是libx264和libx265依赖库中的文件,然后发现这两个库还有依赖库,

问题明了了,问题出在依赖库没修改运行时库。

第二步,修改libx264和libx265所依赖的库的运行时库,以libx265为例:

        1)打开相关工程项目:

        2)添加依赖库项目

        3)修改运行时库,4个方案都修改(Release选MT,Debug选MTd),libx264也需要修改,步骤和libx265相同。

       

 3、重新编译ffmpeg

        修改完之后关闭工程,打开刚才的ffmpeg工程重新编译,得出的静态库就能使用了。

(如果觉得对你有帮助,还请不忘点个赞,你的赞是我更新博客的动力)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值