所需文件准备

创建目录如下

  •  bin 存放 ffmpeg的.dll文件,以及源码的生成可执行文件和调试所需要的.pdb文件
  • include 存放 ffmpeg的头文件
  • lib 存放 ffmpeg的.lib文件
  • src 存放本地工程源码
  • tools 存放ffmpeg的源码

将上根据一篇博客中已经编译好的ffmpeg工程下载到本地,进行如下操作:

  1. 将工程中ffmpeg/install/bin目录中的.dll文件复制拷贝到本地bin/x64
  2. 将工程中ffmpeg/install/bin目录中的.lib文件复制拷贝到本地lib/x64
  3. 将工程中ffmpeg/install/include目录中的所有文件复制拷贝到本地include
  4. 在ffmpeg目录中搜索*.pdb,将搜索到底文件也全部复制到本地bin/x64
  5. 将下载的ffmpeg工程源码放到tools目录下

工程属性配置

1.创建工程

使用vs2019新建一个控制台应用工程

位置为所建的src目录,勾选“将解决方案与项目放在同一目录下”

2.配置库目录

配置头文件为 ..\..\include,即本地创建的include目录

配置lib文件目录 为 ..\..\x64

配置.lib文件,在“附加依赖项”中输入需要的.lib文件名,或者在代码中使用预编译指令来添加,则可以略去此步

3.配置输出和调试目录

配置输出目录为存放.dll文件目录..\..\bin\x64

配置调试目录也为存放.dll目录

配置外部依赖的代码项,进入解决方案属性,在调试源文件中添加tools\ffmpeg

测试代码


#include <iostream>

using namespace std;
extern "C" { //指定函数时c语言函数,函数名不含重载标注
    #include<libavcodec/avcodec.h>
}

//预处理指令导入库
#pragma comment(lib,"avcodec.lib")

int main()
{
    std::cout << "Hello World!\n";
    std::cout << avcodec_configuration();
}

下断点测试是否能够跳入avcodec_configuration()源码,能够跳入测可以调试

最终输出 包含x264 x265 和 aac

Logo

一站式 AI 云服务平台

更多推荐