一、准备
1.操作系统win10 64位
2.请自行安装Qt5.15.2(mingw64)
3.下载ffmpeg预编译库,当前也可以自己下载源码后,自己编译
笔者下载地址:
https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-full.7z
SHA256: d3f0596b4d5f7e49e5e7802e69a32e9fae10769082d4b634ef43ef60f71e1c93
下载地址不唯一,但注意要下载win系统下,64位库的,否则无法使用
4.下载qtav源码
git clone https://github.com/wang-bin/QtAV.git
cd QtAV && git submodule update --init
建议执行至少一次git submodule update --init,以防后续编译失败
二、编译库
1.ffmpeg预编译库和QtAV源码解压到同一目录中,使用编辑器打开QtAV下的.qmake.conf文件,在文件后面加入如下代码,并保存
LIBS += -L../ffmpeg-4.4-full_build-shared/lib/ -llibavcodec.dll
LIBS += -L../ffmpeg-4.4-full_build-shared/lib/ -llibavdevice.dll
LIBS += -L../ffmpeg-4.4-full_build-shared/lib/ -llibavfilter.dll
LIBS += -L../ffmpeg-4.4-full_build-shared/lib/ -llibavformat.dll
LIBS += -L../ffmpeg-4.4-full_build-shared/lib/ -llibavutil.dll
LIBS += -L../ffmpeg-4.4-full_build-shared/lib/ -llibpostproc.dll
LIBS += -L../ffmpeg-4.4-full_build-shared/lib/ -llibswresample.dll
LIBS += -L../ffmpeg-4.4-full_build-shared/lib/ -llibswscale.dll
LIBS += -L../ffmpeg-4.4-full_build-shared/bin/
INCLUDEPATH += ../ffmpeg-4.4-full_build-shared/include
DEPENDPATH += ../ffmpeg-4.4-full_build-shared/include
2.直接使用Qtcreator打开QtAV.pro,选择minGW 64-bit
切换到Release,直接编译即可,示例也可以直接切换、运行
编译完成后,执行下编译目录下的sdk_install.bat,就可以将需要的库安装到Qt目录中
三、遇到的问题
1.Checking for avutil... no
检查下,QtAV下的.qmake.conf文件加入的部分是否正确,或者直接修改环境变量也可以
2.示例player和QMLPlayer测试时,可以正常播放本地文件和rtmp流,但无法播放rtsp流
目前已解决,请参考https://blog.csdn.net/aggs1990/article/details/117886438