在VS2010上搭建FFMPEG环境

参考: http://blog.yundiantech.com/?log=blog&id=7

  1. 下载FFMPEG

传送门: https://ffmpeg.zeranoe.com/builds/

在这里下载的是2.5.2-win32的版本。

步骤,按照 http://blog.yundiantech.com/?log=blog&id=7 这里。

 

  1. 编写代码等。

  1. 代码如下

    #include <iostream>

    using namespace std;

    extern "C"

    {

    #include "libavcodec/avcodec.h"

    #include "libavformat/avformat.h"

    #include "libswscale/swscale.h"

    #include "libavdevice/avdevice.h"

    };

    int main(int argc, char *argv[])

    {

    cout<<"Test"<<endl;

    av_register_all();

    cout<<avcodec_version()<<endl;

    int aaa;

    cin>>aaa;

    }

  2. 编译运行

    出现一些问题:

  3. 问题a:

    fatal error C1083: Cannot open include file: 'inttypes.h': No such file or directory

     

     原因:

    没有找到头文件。inttypes.h

    参考:http://blog.csdn.net/ly402609921/article/details/9030635

    解决方法:

    步骤一:下载 FFmpeg-full-SDK-3.2.rar,里面有头文件inttypes.h

    传送门:http://download.csdn.net/detail/hslaiyaya/4423897    

    步骤二:将inttypes.h文件拷贝到FFMPEG libavutil 目录下面

    步骤三:将common.h文件中,修改#include <inttypes.h>  #include "inttypes.h"

  4. 问题b:

    符号未解析:

    error LNK2019: unresolved external symbol _avcodec_version referenced in function _main

    error LNK2019: unresolved external symbol _av_register_all referenced in function _main

     

    原因:在vs2010中,没有找到对应的lib文件。

    解决方法:

    步骤一:

    右击工程,点击属性,配置工程--连接器--通常--添加lib目录

    步骤二:

    右击工程,点击属性,配置工程--连接器--输入--添加依赖

    步骤三:将ffmpeglib文件,加入依赖项中

    步骤四:保存,退出。

  5. 问题c:

    缺少动态库

    原因:没有找到ffmpeg的动态库

    解决方法:

    步骤一:下载2.5.2-win32shared版本,将bin目录下面的所有文件拷贝到与应用程序一致的目录

    1. 运行结果(成功)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值