FFMPEGオーディオおよびビデオ開発:VS2010 + QT4.8.5リファレンスFFMPEGライブラリ

1.環境紹介

オペレーティングシステム:  win764ビットホームエディション

QTバージョン:  4.8.5(qt-win-opensource-4.8.5-vs2010.exe)

VSバージョン:   2010

FFMPEGバージョン: 4.2.2

2、QtCreateプロジェクト

2.1FFMPEGライブラリのダウンロード

ffmpeg4.2.2ライブラリのダウンロードアドレス:   https ://download.csdn.net/download/xiaolong1126626497/13328939

2.2プロプロジェクトファイル

#-------------------------------------------------
#
# Project created by QtCreator 2021-01-09T15:25:40
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = test1
TEMPLATE = app

QT += multimedia # qaxserver qaxcontainer
#CONFIG += debug qaxserver dll qaxcontainer warn_off
DEFINES += QT_DLL QAXSERVER
INCLUDEPATH += ./ffmpeg/include

LIBS += -lQAxServerd \
    -l$$PWD/FFMPEG_WIN32_LIB_4.2.2/lib/avcodec \
    -l$$PWD/FFMPEG_WIN32_LIB_4.2.2/lib/avformat \
    -l$$PWD/FFMPEG_WIN32_LIB_4.2.2/lib/avfilter \
    -l$$PWD/FFMPEG_WIN32_LIB_4.2.2/lib/avutil \
    -l$$PWD/FFMPEG_WIN32_LIB_4.2.2/lib/swresample \
    -l$$PWD/FFMPEG_WIN32_LIB_4.2.2/lib/swscale

SOURCES += main.cpp\
        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui

2.3ヘッダーファイルとライブラリファイルの参照

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <qdebug.h>

extern "C"{
#include <libavutil/opt.h>
#include <libavutil/mem.h>
#include <libavutil/fifo.h>
#include <libavutil/pixfmt.h>
#include <libavutil/log.h>
#include <libavutil/opt.h>
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#include <libswresample/swresample.h>
#include <libavfilter/avfilter.h>
#include <libavfilter/buffersrc.h>
#include <libavfilter/buffersink.h>
}

#pragma comment(lib, "avcodec.lib")
#pragma comment(lib, "avformat.lib")
#pragma comment(lib, "swscale.lib")
#pragma comment(lib, "swresample.lib")
#pragma comment(lib, "avfilter.lib")

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    qDebug()<<"FFMPEG:"<<av_version_info();
}

MainWindow::~MainWindow()
{
    delete ui;
}

 

おすすめ

転載: blog.csdn.net/xiaolong1126626497/article/details/112393464