文档章节

QtAv

Rechy
 Rechy
发布于 2014/01/03 02:49
字数 458
阅读 256
收藏 1

/////////////////////////////错误百出阶段///////////////////////////
依赖库portaudio, ffmpeg
http://www.portaudio.com/ [svn: https://subversion.assembla.com/svn/portaudio/portaudio/ ]
http://ffmpeg.org/

如果显示找不到avutil库
1.总qtav.pro和libqtav.pro中添加
INCLUDEPATH += D:\CLib\Qt\Qt5.2.0-beta1\Tools\mingw48_32\include

{
//删除掉
EssentialDepends = avutil avcodec avformat swscale
//在此处添加
LIBS += -lavutil -lavcodec -lavformat -lswscale
}

先编译libQtAv 如果出现 QtAv_res.o生成失败(未知原因可能是windres始终无法识别路径,
或者windres版本不对)
在cmd或msys中单独执行这句就能够生成,再编译就能通过:
windres -i H:\kuaipan\project\c++\QtAV\res\QtAV.rc -o H:\kuaipan\
project\c++\build-QtAV-Local_PC_mingw-Debug\.obj\QtAVd_win_x86\QtAV_res.o --incl
ude-dir=H:/kuaipan/project/c++/QtAV/res -DUNICODE -DQ_DLL_LIBRARY -D__STDC_CONST
ANT_MACROS -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -
DQT_CORE_LIB

libQmlAV生成失败 可能会显示“命令语法不正确”:

最终确定错误原因为 目录名不应该叫c++
单独命令执行编译时 ++号在命令行无双引号保护 编译出错

/////////////////////////////之后阶段///////////////////////////
直接把ffmpeg安装mingw/下
注释掉
//EssentialDepends = avutil avcodec avformat swscale
这行之上添加
LIBS += -lavutil -lavcodec -lavformat -lswscale

原因EssentialDepends这句creator不能正确找到依赖的库的位置

构建时显示xcopy错误:
"xcopy" 不存在的命令,
mingw32-make[1]: *** [copydeploymentfolders] Error 1
...

在:项目/构建步骤/make参数里加入
(第一次构建不要加入要等出现错误再加入,
否则有很多复制操作未作):
-no-copy

============================================================
打开视频音频文件时崩溃,是由于音频依赖库库openal或portaudio缺失
@@需修改AudioThread在64行 resetState();之后加上
if (!(d.outputSet->outputs().size()))
        return;
@@在AVPlayer的setupAudioThread()[1068行]中修改为:
    if (!_audio && ao_enable) {
        qDebug("new audio output");
#if QTAV_HAVE(OPENAL)
        _audio = new AOOpenAL();
#elif QTAV_HAVE(PORTAUDIO)
        _audio = new AOPortAudio();
#else
        qDebug("xx////////////xx setupAudioThread fail: need libOpenAL or libPortAudio xx///////////////xx");
        return false;
#endif
    }
以上方法是修复音频缺失导致崩溃 彻底恢复音频需安装以上之一音频库
       

© 著作权归作者所有

共有 人打赏支持
Rechy
粉丝 2
博文 30
码字总数 5766
作品 0
沈阳
程序员
VS2008+QT4.8.7编译QTAV问题和解决方法

VS2008+QT4.8.7编译QTAV问题和解决方法 1.下载windows依赖文件QtAV-depends-windows-x86+x64.7z,为了方便,直接将对应的头文件、静态库和动态库放在QT安装目录对应的位置; 2.设置系统环境变...

道根
2016/11/26
68
0
QtAV 1.5.0 发布,跨平台高性能音视频框架

QtAV 1.5.0 发布,更新内容如下: 加入QtAVWidgets模块。和QtMultimeida一样,QtAV模块只包含核心的功能,只依赖QtCore和QtGui。这样部署QtQuick应用可以去掉QtWidgets模块,大概小6M。QtAV模...

LucasWang
2015/02/14
4.1K
7
QtAV 1.2.3 发布,跨平台音视频播放库

QtAV 1.2.3 发布了,改进内容包括: - 支持 FFmpeg/libav avresample - 支持OpenGL ES2. 现在可以在Qt5 GLES2的环境下编译了 - Qt5下对XV的支持 - 支持更多的音频格式(采样率、声道) - 修复...

LucasWang
2013/08/02
1K
10
基于QtAV的简易播放器(开源)

这个开源代码,是我利用QtAV源码,提取其中一部分代码,进行整合到我自己项目中,做的一个小型播放器测试,至于怎么安装一些环境以及QtAV源码编译在我以前写的一篇博客中可以看到(Qt第三方库...

longbei9029
2017/02/26
0
0
跨平台视频播放库--QtAV

QtAV是基于Qt和FFmpeg的音视频播放库。开发者能够很容易基于QtAV编写播放器。支持常见的功能如播放、截图、暂停、快进快退、音量控制、播放网络流媒体等。目前支持的渲染方式有QPainter、Dir...

LucasWang
2013/03/04
15.5K
3

没有更多内容

加载失败,请刷新页面

加载更多

Linux命令备忘录: jobs 显示Linux中的任务列表及任务状态命令

jobs命令用于显示Linux中的任务列表及任务状态,包括后台运行的任务。该命令可以显示任务号及其对应的进程号。其中,任务号是以普通用户的角度进行的,而进程号则是从系统管理员的角度来看的...

开元中国2015
44分钟前
1
0
springboot Whitelabel Error Page(Not Found)解决方案

当出现上图图的错误时注意 报错信息 There was an unexpected error (type=Not Found, status=404). Not Found代表未访问到资源 解决方案:比较访问路径和代码的路径有没有写错 正确的访问路...

斩神魂
44分钟前
1
0
记一次hbase master停止服务的原因以及恢复

在Hdfs空间不足的情况下,拒绝写入,hbase会down掉。如果hdfs空间没有清理的情况下,重新启动hbase,会报splitlog失败,原因是wal日志重写过程中会写hdfs,写不进去导致的。重启不成功。 解决...

PageYi
48分钟前
1
0
如何从平面设计转行到UI设计?

时代的变迁,科技的进步,工具的发展,薪资的差距,促使许多人转行的原因,但平面与界面两者之间有着哪些的差异呢?如果,想要转行又该具备哪些条件呢? 平面、界面设计之间的差异性 平面设计...

mo311
51分钟前
4
0
线程池整理

一般在生产环境中,我们都不会直接new一个Thread,然后再去start(),因为这么做会不断频繁的创建线程,销毁线程,过大的线程会耗尽CPU和内存资源,大量的垃圾回收,也会给GC带来压力,延长GC停顿时间...

算法之名
53分钟前
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部