我是靠谱客的博主 眼睛大小松鼠,最近开发中收集的这篇文章主要介绍QtAV编译和使用环境编译步骤遇到错误使用时发现问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

环境

  • x64
  • QtAV1.13
  • Qt5.12.9
  • VS2017 
  • FFmpeg3官方依赖包

编译步骤

git clone https://github.com/wang-bin/QtAV.git
cd QtAV && git submodule update --init

可以下载官方推荐的FFmpeg依赖包:Download QtAV from SourceForge.net

Extract ffmpeg to QtAV source dir. add 2 lines in .qmake.conf

INCLUDEPATH += $$PWD/ffmpeg/include
LIBS += -L$$PWD/ffmpeg/lib

 注意32位LIBS改成:LIBS += -L$$PWD/QtAV-depends-windows-x86+x64/lib

先后构建libQtAV,libQtAVWidgets,libQmlAV,examples,如果构建失败了尝试构建整个项目

遇到错误

error LNK2019: 无法解析的外部符号 "enum QtAV::VideoFormat::PixelFormat __cdecl QtAV::pixelFormatFromFourcc(int)" (?pixelFormatFromFourcc@QtAV@@YA?AW4PixelFormat@VideoFormat@1@H@Z),该符号在函数 "protected: void * __cdecl QtAV::d3d9::SurfaceInterop::mapToHost(class QtAV::VideoFormat const &,void *,int)" (?mapToHost@SurfaceInterop@d3d9@QtAV@@IEAAPEAXAEBVVideoFormat@3@PEAXH@Z) 中被引用
..lib_win_x86_64QtAV1.dll : fatal error LNK1120: 1 个无法解析的外部命令

解决方法:https://github.com/wang-bin/QtAV/issues/1250#issuecomment-725963182

add CONFIG *= d3dva to libQtAV.pro in win32:!winrt section .

使用时发现问题

  • 使用FFmpeg4.3.2编译的话examples中的播放器播放音频会崩溃,切换到官方提供的FFmpeg3依赖包则没问题。
  • simpleplayer点击进度条不能跳转进度
  • QMLPlayer打开是一片空白

// 参考player修改simpleplayer:

最后

以上就是眼睛大小松鼠为你收集整理的QtAV编译和使用环境编译步骤遇到错误使用时发现问题的全部内容,希望文章能够帮你解决QtAV编译和使用环境编译步骤遇到错误使用时发现问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(67)

评论列表共有 0 条评论

立即
投稿
返回
顶部