文档章节

QtAv

Rechy
 Rechy
发布于 2014/01/03 02:49
字数 458
阅读 249
收藏 1
点赞 0
评论 0

/////////////////////////////错误百出阶段///////////////////////////
依赖库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 ⋅ 0

QtAV 1.5.0 发布,跨平台高性能音视频框架

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

LucasWang ⋅ 2015/02/14 ⋅ 7

QtAV 1.2.3 发布,跨平台音视频播放库

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

LucasWang ⋅ 2013/08/02 ⋅ 10

基于QtAV的简易播放器(开源)

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

longbei9029 ⋅ 2017/02/26 ⋅ 0

跨平台视频播放库--QtAV

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

LucasWang ⋅ 2013/03/04 ⋅ 3

QtAV 1.6.0 发布,跨平台高性能音视频框架

QtAV 1.6.0 发布,改进内容如下: - 性能最好的VDA解码器(OSX):现在VDA解码后无需拷贝直接渲染了,性能大幅提高。这个功能其他播放器早有了,但是QtAV用到了和它们不一样的输出格式,性能...

LucasWang ⋅ 2015/04/24 ⋅ 13

QtAV 1.3.0 发布,跨平台音视频播放库

QtAV 1.3.0 发布了,改进内容包括: - windows下dxva硬解初步支持,目前拖动时间可能会有崩溃问题。 可选择音轨 可调节亮度、饱和度等 循环播放、播放列表、历史记录 HEVC支持(FFmpeg) 以下...

LucasWang ⋅ 2013/12/20 ⋅ 7

深度影院 V2.1 发布——一个全新的体验

历时两个月的开发,Deepin团队自豪地向您宣布:深度影院2.1版本发布啦! 深度影院2.1是一个重要的阶段性版本,确定了深度影院的基础设计,同时为替换QtAV后端前的最后一个版本。 简洁、精致 ...

cxbii ⋅ 2014/11/12 ⋅ 53

QtAV 1.4.0 发布,跨平台音视频播放库

QtAV 1.4.0 发布了,改进内容包括: OpenGL优化,支持更多的格式,支持QML,对于Qt>=5.4支持opengl动态切换 VAAPI: GLX直接渲染支持,性能大幅提升。检测显卡是否4k以防止系统崩溃. DXVA: 更...

LucasWang ⋅ 2014/09/11 ⋅ 3

QtAV 1.2.4 发布,跨平台音视频播放库

QtAV 1.2.4 发布了,改进内容包括: 1. QML 初步支持。需要Qt5.可以看来自于qtmultimedia的例子qmlvideofx,用QtAV替换了qtmultimedia引擎。使用qtmultimedia需要自己装解码器,而用QtAV就不...

LucasWang ⋅ 2013/09/09 ⋅ 6

没有更多内容

加载失败,请刷新页面

加载更多

下一页

那些证书相关的玩意儿(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等)

之前没接触过证书加密的话,对证书相关的这些概念真是感觉挺棘手的,因为一下子来了一大堆新名词,看起来像是另一个领域的东西,而不是我们所熟悉的编程领域的那些东西,起码我个人感觉如此,且很长...

颖辉小居 ⋅ 18分钟前 ⋅ 0

利用有限制通配符提升API灵活性(28)

1、参数化类型是不可变的 List<String> 不是List<Object>的子类,但是二者是有联系的 利用有限制的通配符类型处理类似情况 List<? extends Object>(生产者) Collection<? super E>(消费者......

职业搬砖20年 ⋅ 24分钟前 ⋅ 0

ssm框架 +bootstrap分页

这里有两种方式 方式一:自己写分页 方式二:使用插件PageHelper 1.自己写分页 1.1 效果 1.2 实现过程 1.2.1 创建分页公共类 //---------------------------1.属性-------------------------...

Lucky_Me ⋅ 31分钟前 ⋅ 0

Istio

helm template install/kubernetes/helm/istio --name istio --namespace istio-system > $HOME/istio.yaml after $ kubectl create namespace istio-system$ kubectl create -f $HOME/ist......

openthings ⋅ 31分钟前 ⋅ 0

内核线程、轻量级进程、用户线程

线程与进程概念 在现代操作系统中,进程支持多线程。 进程是资源管理的最小单元; 线程是程序执行的最小单元。 即线程作为调度和分配的基本单位,进程作为资源分配的基本单位 一个进程的组成...

117 ⋅ 36分钟前 ⋅ 0

elasticsearch2.4.6升级为elasticsearch-5.5.0的经历

将elasticsearch-5.5.0 中的配置 path.data 指向原来的数据路径 即 path.data: /usr/local/src/elasticsearch-2.4.6/data 注意: elasticsearch-5.5.0 需要将jdk版本升级到1.8...

晨猫 ⋅ 37分钟前 ⋅ 1

lvm讲解 磁盘故障小案例

1

oschina130111 ⋅ 41分钟前 ⋅ 0

那些提升开发人员工作效率的在线工具

本文转载自公众号 Hollis 作为一个Java开发人员,经常要和各种各样的工具打交道,除了我们常用的IDE工具以外,其实还有很多工具是我们在日常开发及学习过程中要经常使用到的。 Hollis偏爱使用...

时刻在奔跑 ⋅ 53分钟前 ⋅ 0

restful风格 实现DELETE PUT请求 的web.xml的配置

import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframe......

泉天下 ⋅ 58分钟前 ⋅ 0

Shell数组

Shell数组 Shell在编程方面比Windows批处理强大很多,无论是在循环、运算。 bash支持一维数组(不支持多维数组),并且没有限定数组的大小。类似与C语言,数组元素的下标由0开始编号。获取数...

蜗牛奔跑 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部