目录
一,配置方式
QT配置FFmpeg,一般来讲可以直接下载FFmpeg后设置到电脑的环境变量中,然后加入文件直接引用就行。但是这种不便打包,所以这里采用直接把所需文件加到项目中的方式来进行QT的FFmpeg配置。
二,FFmpeg下载地址
选择 (红框圈起来部分)
选择 ffmpeg-master-latest-win64-gpl-shared.zip
注意位数哈,别选了64位的还 哈戳戳的 用Qt的MinGW32来编译
解压后的文件:
三,选择需要的文件放入Qt项目
复制文件夹 lib
和 include
,放到自己Qt 的项目路径下
选择这两个
放进去
将 bin文件夹 中的所有 .dll(动态库文件)文件 复制粘贴到 项目的 .exe文件路径的目录下。
注:.exe文件路劲就是你Qt项目运行后会生成的,如果没有,就先去运行一下程序吧。运行成功后会有这个:
这里面就会有.exe文件
复制 bin文件夹中的所有.dll文件
放到.exe文件所在路径
四,在Qt的pro文件中引入所需文件路径信息
1,在Qt的pro文件中加入下面代码
INCLUDEPATH += $$PWD/include
LIBS += $$PWD/lib/avcodec.lib \
$$PWD/lib/avdevice.lib \
$$PWD/lib/avfilter.lib \
$$PWD/lib/avformat.lib \
$$PWD/lib/avutil.lib \
$$PWD/lib/postproc.lib \
$$PWD/lib/swresample.lib \
$$PWD/lib/swscale.lib \
2,在源文件(.cpp)文件中加入如下代码
用 C 语言的形式编译这些头文件,因为 FFmpeg 是 C语言开发的
extern "C"
{
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#include <libavdevice/avdevice.h>
#include <libavformat/version.h>
#include <libavutil/time.h>
#include <libavutil/mathematics.h>
#include <libavutil/imgutils.h>
}
五,测试
在构造函数中加入如下代码,观察是否能输出FFmpeg 的版本号。
qDebug() <<"FFmpeg的版本号:"<< avcodec_version();
结果:显示出版本号,成功
六,注意事项:
注意我们这里下载的是:ffmpeg-master-latest-win64-gpl-shared.zip
是64位的,所以注意使用MinGW64来编译。