QT配置ffmpeg库
QT和ffmpeg库的版本
ffmpeg下载链接:https://pan.baidu.com/s/1Jn4wDakmbZW3I_ZDKpBrww
提取码:2580
配置ffmpeg库
1.将下载的ffmpeg库进行解压
2.使用Qt创建新项目
3.将解压后的dev和shared放到项目目录下
(使用64位还是32位根据自己所需而定)
4.配置.pro
在pro中加上以下内容:
INCLUDEPATH += $$PWD/ffmpeg-4.0.2-win64-dev/include
LIBS += -L$$PWD/"ffmpeg-4.0.2-win64-dev/lib" -lavcodec \
-L$$PWD/"ffmpeg-4.0.2-win64-dev/lib" -lavdevice \
-L$$PWD/"ffmpeg-4.0.2-win64-dev/lib" -lavfilter \
-L$$PWD/"ffmpeg-4.0.2-win64-dev/lib" -lavformat \
-L$$PWD/"ffmpeg-4.0.2-win64-dev/lib" -lavutil \
-L$$PWD/"ffmpeg-4.0.2-win64-dev/lib" -lpostproc \
-L$$PWD/"ffmpeg-4.0.2-win64-dev/lib" -lswresample \
-L$$PWD/"ffmpeg-4.0.2-win64-dev/lib" -lswscale \
添加完成之后编译一下
说一下语法:
$$PWD:是项目根目录
-L 是寻找目录,注意跟后面的路径buneng 有空格。
-l 是寻找库 ,同样不能有空格
对于多个库 用“\” 符合结尾。
5.将shared/bin下的dll移到build下的exe所在目录下
shared/bin下的dll
移完之后:
6.在头文件中添加以下内容:
extern "C" {
#include "libavcodec/avcodec.h"
#include "libavformat/avformat.h"
#include "libswscale/swscale.h"
#include "libavdevice/avdevice.h"
}
7.测试
#include "widget.h"
#include "ui_widget.h"
#include<QDebug>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
unsigned version = avcodec_version();
qDebug() << "version :" << version;
}
Widget::~Widget()
{
delete ui;
}
成功输出