我想在Windows上的QT Creator中开发一个使用FFMPEG的视频播放器,但对QT Creator环境来说完全是新的。
我已经从这个link下载了一个示例项目。当我在QT Creator中打开并运行它时,它返回了这个错误,:-1: error: avutil is required, but compiler can not find it。
我已经下载了这个( FFMPEG -20130322-git-e0e8c20-win64-static) FFMPEG文件,并将其解压缩到C分区的文件夹中。我想我得到了这个错误,因为QT找不到FFMPEG在哪里,但仍然不知道如何链接它。你能帮我解决这个问题吗?
发布于 2013-03-28 19:05:05
您应该设置一些环境变量,以便编译器可以找到FFmpeg和其他库文件。
对于VC编译器,它们是INCLUDE和LIB。对gcc来说,它们是CPATH和LIBRARY_PATH。例如:
vc:
set INCLUDE=ffmpeg_path\include;portaudio_path\include;%INCLUDE%
set LIB=ffmpeg_path\lib;portaudio_path\lib;%LIB%unix shell环境下的gcc (包括带有sh.exe的mingw ):
export CPATH=ffmpeg_path/include:portaudio_path/include:$CPATH
export LIBRARY_PATH=ffmpeg_path/include:portaudio_path/lib:$LIBRARY_PATH无sh.exe的windows cmd环境下的gcc
set CPATH=ffmpeg_path\include;portaudio_path\include;%CPATH%
set LIBRARY_PATH=ffmpeg_path\lib;portaudio_path\lib;%LIBRARY_PATH%如果您是在QtCreator中构建,请转到QtCreator的'Projects‘页面并添加或附加这些环境。
我想我应该写一些文档来展示如何构建QtAV。
发布于 2013-03-28 22:51:28
我是QtAV的作者。我猜您使用的是针对OpenGL ES2构建的官方Qt5库。但QtAV使用的是OpenGL 1.x。因此您可能会遇到编译错误。但是几天前我已经通过禁用OpenGL代码修复了这个问题。所以我想知道你是否在使用最新的代码。如果没有,请使用
git update更新QtAV。如果编译错误仍然存在,请让我知道。我在我的电脑上进行了测试,并且工作正常。您还可以通过修改QtAV.pro来禁用OpenGL代码。只需在此处删除'gl‘
OptionalDepends = portaudio direct2d gdiplus xv gl #openal我不熟悉OpenGL,所以对OpenGL ES2的支持需要几天时间。如果您想启用OpenGL,您可以使用Qt4.8或自己构建Qt5。我建议你使用Qt4.8,因为Qt5现在不稳定。
:)
发布于 2013-03-28 14:02:54
经过研究,我终于解决了上面的问题。这就是解决方案,
从"ffmpeg-20130322-git-e0e8c20-win32-dev/include“文件夹中的所有文件夹中下载”
但是现在有很多与OpenGL命令相关的错误。最后,我成功地运行了这个项目。我博客上的一篇This文章展示了这些步骤。
https://stackoverflow.com/questions/15596566
复制相似问题