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]),未經作者授權同意,請勿轉載。如需獲取本程序源代碼和資源,歡迎發郵件與我聯繫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章