【已解决】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、 总结

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

相关推荐
web打印社区9 小时前
Windows 网页静默打印设置步骤:客户端、防火墙与联调清单
开发语言·前端·javascript·chrome·pdf·ecmascript
小师兄吃牛肉9 小时前
什么是R语言?如何快速学习R语言
开发语言·学习·r语言
All for pursuit.9 小时前
【回溯-2】22.括号生成
数据结构·c++·算法·leetcode
longlongzihan9 小时前
LeetCode 1004.最大连续1的个数III 滑动窗口及动态规划题解
c++·算法·leetcode·dp·滑动窗口
Evand J9 小时前
【MATLAB例程】三维快速扩展随机树(RRT)路径规划与到达角(AOA)、到达时间差(TDOA)融合定位,附下载链接
开发语言·matlab·代码·定位·例程
执明wa9 小时前
Android RecyclerView 实战:点击频道栏切换对应内容
android·开发语言·windows·microsoft·android studio
开开心心就好9 小时前
图片白底怎么去掉?抠图工具抠完背景透明
java·服务器·开发语言·pdf·ocr·散列表·启发式算法
朝朝辞暮i10 小时前
C++ 第 22 课:const —— 不允许随便修改的数据
开发语言·c++·算法
web打印社区10 小时前
JS 静默打印怎么做:纯前端为什么不行,以及最小可跑通写法
开发语言·前端·javascript·websocket·网络协议·http·pdf
大圣编蚕10 小时前
C语言怎么写小游戏?从零开始做一个贪吃蛇
c语言·开发语言