目录
2.第二部分:是可以供开发者使用的SDK,为各个不同平台编译完成的库文件
3.第三部分:是整个工程的源代码无论是编译出来的可执行程序还是SDK,都是由这些源代码编译出来的
一、下载ffmpeg:
1.官方下载链接:
2.博主资源下载:FFmpeg相关库文件用于与FFmpeg相关内容的开发主要包括:记录、转换数字音频、视频,并能将其转化为流。-编解码文档类资源-CSDN下载
解压完得到相关的库文件,如下图所示:
😄ffmpeg的组成:
核心分为三个部分
1.第一部分:是四个作用不同的工具软件
- ffmpeg.exe:音视频转码、转换器
- ffplay.exe:简单的音视频播放器
- ffserver.exe:流媒体服务器
- ffprobe.exe:简单的多媒体码流分析器
2.第二部分:是可以供开发者使用的SDK,为各个不同平台编译完成的库文件
基于以下这些库我们可以来开发我们自己的应用程序
- libavcodec:包含音视频编码器和解码器
- libavutil:包含多媒体应用常用的简化编程的工具,如随机数生成器、数据结构、数学函数等功能
- libavformat:包含多种多媒体容器格式的封装、解封装工具
- libavfilter:包含多媒体处理常用的滤镜功能
- libavdevice:用于音视频数据采集和渲染等功能的设备相关
- libswscale:用于图像缩放和色彩空间和像素格式转换功能
- libswresample:用于音频重采样和格式转换等功能
3.第三部分:是整个工程的源代码无论是编译出来的可执行程序还是SDK,都是由这些源代码编译出来的
本文不做过多介绍:略
二、在Qt中引入ffmpeg:
1.第一步:将ffmpeg文件拷贝到qt工程目录下
2.第二步:打开qt pro文件进行设置
输入如下:
INCLUDEPATH +=$$PWD/ffmpeglib/include
LIBS += $$PWD/ffmpeglib/lib/avcodec.lib \
$$PWD/ffmpeglib/lib/avfilter.lib \
$$PWD/ffmpeglib/lib/avformat.lib \
$$PWD/ffmpeglib/lib/avutil.lib \
$$PWD/ffmpeglib/lib/postproc.lib \
$$PWD/ffmpeglib/lib/swresample.lib \
$$PWD/ffmpeglib/lib/swscale.lib
3.第三步:测试FFmpeg库是否能正常使用
#include <QApplication>
#include <QDebug>
extern "C" //ffmpeg是采用c语言实现的 c++工程种 导入c语言
{
//avcodec:编解码(最重要的库)
#include <libavcodec/avcodec.h>
//avformat:封装格式处理
#include <libavformat/avformat.h>
//swscale:视频像素数据格式转换
#include <libswscale/swscale.h>
//avdevice:各种设备的输入输出
#include <libavdevice/avdevice.h>
//avutil:工具库(大部分库都需要这个库的支持)
#include <libavutil/avutil.h>
}
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
qDebug()<<"ffmpeg----version"<<endl;
qDebug()<<avcodec_version();
return a.exec();
}
输出以下内容说明搭建成功!
🚀FFMPEG技术---解码,详见:
FFmpeg+Qt开发(二):解码流程 详细分析+代码示例 这一篇就够了_猿力猪的博客-CSDN博客_ffmpeg解码教程
🚀FFMPEG技术---编码,详见:
FFmpeg+Qt开发(三):编码流程 普通视频编码+示例详解 一学就会_猿力猪的博客-CSDN博客
🚀FFMPEG技术---转码,详见:
FFmpeg+Qt开发(四):转码流程 H.264 转(mov、mp4、avi、flv)等视频格式 示例详解_猿力猪的博客-CSDN博客
✍ 本文主要介绍了FFmpeg技术在Qt下的相关配置,如有疑问,欢迎各位评论区学习交流!
✍ 觉得博主写的不错的,麻烦!😀点赞!😀评论!😀收藏!支持一下哈!蟹蟹你们!
参考: