【已解决】c++如何从0配置ffmpeg

本博文源于笔者正在做的任务,将视频mp4每帧转换成jpg格式,前提是需要配置ffmpeg。因此本文从0下载教读者如何配置ffmpeg。

文章目录

1、百度搜索官网

官网已经搜索到,我们要找到下载链接,点击进去,下一张图

一定要选择第二种模式,从github里下载。

选择倒数第二个zip

点击进去,我们就下载好了。

2、配置项目

创建一个项目

然后配置项目属性,项目属性配置三个部分,


3、创建main.cpp测试库与包

将之前下载的zip进行解压,将其lib,include,放到该目录里

创建bin目录,将解压的bin里的所有dll放到这里

main.cpp写下这段测试代码,视频文件没有也没关系,只要能正常编译运行就行

cpp 复制代码
#include <iostream>
extern "C" {
#include<libavcodec/avcodec.h>
#include<libavformat/avformat.h>
#include<libavutil/avutil.h>
#include<libavutil/opt.h>
}

#pragma comment(lib, "avcodec.lib")
#pragma comment(lib, "avformat.lib")
#pragma comment(lib, "avutil.lib")
using namespace std;
int main()
{
    AVFormatContext* pFormat = nullptr;
    string path(R"(11.mp4)");
    int ret = avformat_open_input(&pFormat, path.c_str(), nullptr, nullptr);//打开视频文件
    if (ret)
    {
        cout << "avformat_open_input failed" << endl;
        return -1;
    }
    ret = avformat_find_stream_info(pFormat, nullptr);//查询视频流信息
    if (ret)
    {
        cout << "avformat_open_input failed" << endl;
        return -1;
    }
    av_dump_format(pFormat, 0, nullptr, 0);//在控制台中打印该视频文件的信息。
    getchar();
}

有视频文件能运行暂停分析出视频文件,如果没有视频文件,则会闪退,也代表成功。只要能编译运行都代表成功。

4、 总结

只要这样子流程走下来不报错就代表运行成功了。

相关推荐
布莱克60513 分钟前
Swift 条件语句详解:从 if 到 switch 的完整指南
开发语言·ssh·swift·switch·条件语句·guard·if
汉克老师26 分钟前
《从C++小白到算法高手:GESP 1—8级成长地图》第一讲:认识GESP——从编程新手到算法探索者
c++·gesp·信息学竞赛·小学生学c++
吴可可12328 分钟前
ActiveX调用WScript.Shell原理揭秘
开发语言
晴天的雨.9922 小时前
【C++】继承篇
java·开发语言·c++
SomeOtherTime2 小时前
第 1 讲:内存布局与所有权解剖——栈帧、胖指针与“移动/拷贝”在汇编层面的真实面目
java·开发语言·汇编
青少儿编程课堂2 小时前
蓝桥杯青少组图形化 + 全国青少年信息素养大赛 + 电子学会图形化考级:校园大富翁经营闯关解析
c++·python·算法·bfs·信息学竞赛
another heaven2 小时前
【C/C++ 第一次跨越(上):用 C++11/14 停止制造新的旧代码】
c语言·c++·制造
qq_406981032 小时前
c++ lamda(三)Lambda表达式
java·前端·c++
总要学点什么2 小时前
第106篇:三维特效-流动线效果——让一颗光点沿整条线一路滚到头
开发语言·javascript·ecmascript·gis·webgl·材质·cesium
大可不必了13 小时前
03 函数定义和调用
开发语言·python