1.下载VS207在线安装包,安装VS207
2.下载QT5.13.1http://download.qt.io/archive/qt/安装Qt
3.下载FFmpeg
http://ffmpeg.org/download.html
选择Window版本
dev版本,程序开发时用到,shared程序运行时用到
下载放到并解压到QtPlayLearn目录
创建Qt工程,
配置工程环境
QtFFmpegTest.pro文件里
工程文件内容
TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt
#将输出文件直接放到源码目录下的bin目录下,将dll都放在了次目录中,用以解决运行后找不到dll的问#DESTDIR=$$PWD/bin/
contains(QT_ARCH, i386) {
message("32-bit")
DESTDIR = $${PWD}/bin32
} else {
message("64-bit")
DESTDIR = $${PWD}/bin64
}
win32{
contains(QT_ARCH, i386) {
message("32-bit")
INCLUDEPATH += $$PWD/lib/win32/ffmpeg/include
$$PWD/src
LIBS += -L$$PWD/lib/win32/ffmpeg/lib -lavcodec -lavdevice -lavfilter -lavformat -lavutil -lpostproc -lswresample -lswscale
} else {
message("64-bit")
INCLUDEPATH += $$PWD/lib/win64/ffmpeg/include
$$PWD/src
LIBS += -L$$PWD/lib/win64/ffmpeg/lib -lavcodec -lavdevice -lavfilter -lavformat -lavutil -lpostproc -lswresample -lswscale
}
}
SOURCES += \
main.cpp
写代码测试:
#include <iostream>
using namespace std;
extern "C"
{
#include "libavcodec/avcodec.h"
#include "libavformat/avformat.h"
#include "libswscale/swscale.h"
#include "libavdevice/avdevice.h"
}
///由于我们建立的是C++的工程
///编译的时候使用的C++的编译器编译
///而FFMPEG是C的库
///因此这里需要加上extern "C"
///否则会提示各种未定义
int main()
{
//这里简单的输出一个版本号
#ifdef _WIN64
cout << "Hello FFmpeg(64bit位)!" << endl;
#elif _WIN32
cout << "Hello FFmpeg(32bit位)!" << endl;
#endif
av_register_all();
unsigned version = avcodec_version();
cout << "version is:====" << version;
return 0;
}
编译运行:
到此,Window的开发环境搭建OK。