ffmpeg Windows开发环境搭建

一、在windows上搭建基于ffmpeg解决方案的开发环境

系统 : Windows 10 x86_64系统  i5 4核cpu 8gb内存

工具: Visual Studio Community 2007

库文件和头文件:ffmpeg 开发库,这里需要Shared、Dev库,下载地址为《Windows ffmpeg Build

 

Shared动态库dll以及依赖dll的可执行文件。

Dev开发库:包含FFMPEG头文件的include,包含静态库的lib 【这种静态库只包含头元信息,这是需要Shared库原因】

注意:Shared和Static库原则上必须保持同一版本,否则可能无法引用

 

假设以上文件放置目录如下:

 

include 头文件

d:/ffmpeg/include

lib 静态库d:/ffmpeg/lib
share 动态库d:/ffmpeg/share

二、配置开发环境

1、根据自己的需要创建Visual C++的应用项目

2、环境配置

2.1 打开项目属性面板

https://i-blog.csdnimg.cn/blog_migrate/15027ec08aa3b0511af5515c6372c528.png

2.2 选择【VC++目录】,配置include位置和lib

2.3 接下来选择【链接器 -> 输入 】中的【附加依赖项】进行编辑,添加静态库引用

正常情况下项目配置完成了,但是ffmpeg提供的lib文件不包含代码实现部分,因此我们需要添加dll库进来,这样运行会提示找不到dll文件。

 

3、添加dll动态链接库

添加dll文件的方式有2种,一般来说,我们需要把dll放到项目的根目录下,当然还有另一种方式就是链接的方式。

3.1 、添加dll到项目目录下

在visual studio 下,第一层路径为【解决方案路径】,dll需要放置到解决方案路径下的子项目中,换种说法是放置到包含vcxproj文件的目录下。这种方式一般用于项目发布。

因此,拷贝dll到项目目录下即可。

 

3.2、临时修改环境变量

运行环境会扫描path路径,可以将share库目录添加到path中,同样也可以临时性修改。

 

三、代码开发注意事项

1、由于ffmpeg 是基于gcc标准开发的,因此在msvc上,需要关闭SDL检查

2、Visual Studio系统创建的项目是C++程序,引入的header需要注意

extern "C"{

 #include ....

}

3、msvc编译时强制要求预定义__STDC_CONSTANT_MACROS,因此合并第二个,#include部分可以如下使用

#ifdef __cplusplus
extern "C"
{

#ifndef __STDC_CONSTANT_MACROS
#define __STDC_CONSTANT_MACROS
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#include <libavutil/avutil.h>
#endif

}

#else

#ifndef __STDC_CONSTANT_MACROS
#define __STDC_CONSTANT_MACROS
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#include <libavutil/avutil.h>
#endif

#endif 

3、编译时cpu arc选择x64

 

综上,开发环境配置完成。

转载于:https://my.oschina.net/ososchina/blog/3007891

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值