简介
Qt qmake和FFmpeg的版本都更新了,以前的教程很多坑
用新版Qt6.4.2 ,qmake,引用 FFmpeg 5.0.1的动态库dll
版本说明
Qt版本
-
Qt版本:Qt6.4.2 Windows10
-
buile-system:使用qmake
-
构建套件:MinGW 64-bit
选择构建套件的时候,取消shadow build。这样生成的exe和工程代码放在同一目录
-
Qt Creator版本:9.0.1(Community)
FFmpeg
-
登录官网:http://ffmpeg.org/
-
选择下载,window版本,我选的是第一个链接
选择5.0.1,share版本,该版本包含dll动态链接库
-
解压并添加环境变量
将解压后的ffmpeg-5.1.2-full_build-shared所在绝对路径添加到系统环境变量中
win+r调出cmd,输入ffmpeg -version 命令验证是否成功
Qt项目使用FFmpeg的函数
复制文件到项目目录
将加压后的ffmpeg-5.1.2-full_build-shared目录中的bin目录和include目录复制到工程目录下。
bin目录包含我们用到的dll和exe文件,include目录包含头文件
bin目录重命名为ffmpeg-dll
pro文件设置
pro文件最后一行添加
INCLUDEPATH +=$$PWD/include
LIBS +=$$PWD/ffmpeg-dll/av*.dll \
$$PWD/ffmpeg-dll/post*.dll \
$$PWD/ffmpeg-dll/sw*.dll
代码测试
ffmpeg是C语言写的库,所以incude头文件的时候要加extern “C”。作用是取消C++的名称粉碎机制
调用函数av_version_info(),输出ffmpeg的版本信息