Bootstrap

QT 配置FFmpeg

目录

一,配置方式

二,FFmpeg下载地址

三,选择需要的文件放入Qt项目

四,在Qt的pro文件中引入所需文件路径信息

1,在Qt的pro文件中加入下面代码

2,在源文件(.cpp)文件中加入如下代码

五,测试

六,注意事项:


一,配置方式

        QT配置FFmpeg,一般来讲可以直接下载FFmpeg后设置到电脑的环境变量中,然后加入文件直接引用就行。但是这种不便打包,所以这里采用直接把所需文件加到项目中的方式来进行QT的FFmpeg配置。

二,FFmpeg下载地址

Download 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来编译。

;