FFmpeg开发(一)一Qt Creator配置FFmpeg

                                 Qt Creator配置FFmpeg

一、FFmpeg介绍

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。

像暴风影音、QQ、爱奇艺、格式工厂等都使用了FFmpeg,

点击下载:FFmpeg下载地址

二、软件版本说明

1、Qt Creator说明:

我的Qt Creator安装版本如下图:

2、FFmpeg版本

为了和Qt的版本兼容,我下载了32位的FFmpeg。下载地址:https://ffmpeg.zeranoe.com/builds/

三、配置FFmpeg

1、下载好FFmpeg后解压出来。

2、新建一个Qt项目

3、把下载的ffmpeg-4.2.1-win32-dev中的include、lib文件夹拷贝到项目中(这里我新建了一个ffmpeg文件夹)。

4、在Qt项目文件中添加所需的库,如下图。

INCLUDEPATH += $$PWD/ffmpeg/include
LIBS += $$PWD/ffmpeg/lib/avcodec.lib\
        $$PWD/ffmpeg/lib/avdevice.lib\
        $$PWD/ffmpeg/lib/avfilter.lib\
        $$PWD/ffmpeg/lib/avformat.lib\
        $$PWD/ffmpeg/lib/avutil.lib\
        $$PWD/ffmpeg/lib/postproc.lib\
        $$PWD/ffmpeg/lib/swresample.lib\
        $$PWD/ffmpeg/lib/swscale.lib

5、然后构建项目,可以看到生成的构建文件夹。

6、把下载的ffmpeg-4.2.1-win32-shared文件夹中的内容,拷贝到生成的exe文件夹中。

四、测试例子

我们测试ffmpeg。在刚才创建的项目中添加以下内容:

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>

    #undef main
}

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    qDebug()<<"this test ffmpeg!";
    av_register_all();
    unsigned version = avcodec_version();
    qDebug()<<"ffmpeg version:"<<version;

    return a.exec();
}

可以看到输出结果:

本文原创作者:冯一川([email protected]),未经作者授权同意,请勿转载。如需获取本程序源代码和资源,欢迎发邮件与我联系。

猜你喜欢

转载自blog.csdn.net/ifeng12358/article/details/105363777
今日推荐