QtAV学习笔记 解决RTSP流无法播放问题(三)
前记:
在前面编译成功后,测试QtAV自带的示例,发现本地视频文件、RTMT流可以正常,但无法播放RTSP流,所以单独探究了此问题
一、分析问题
因为之前研究过ffmpeg的使用,所以直接想到,应该是rtsp拉流,默认使用了udp,而不是tcp,先验证下问题:
找到ffmpeg预编译包ffmpeg-4.4-full_build-shared/bin/ffplay.exe
执行ffplay rtmp://___,可以正常播放
执行ffplay rtsp://___,无法播放
执行ffplay -rtsp_transport tcp rtsp://___,可以正常播放
由此找到问题,是网络状况不佳导致的
二、解决问题
简单看了下QtAV源码,没有找到设置的接口,那就直接写在源码中吧
找到QtAV源码QtAV/src/AVDemuxer.cpp,在void checkNetwork()中加入如下代码
if(file.startsWith(QLatin1String("rtsp:")))options[QStringLiteral("rtsp_transport")]=QStringLiteral("tcp");
告诉ffmpeg,rtsp直接使用tcp拉流
参考之前的编译的方法,重新编译,然后再测试示例player和QMLPlayer,发现可以正常播放rtsp流了
QtAV学习笔记 解决RTSP流无法播放问题(三)相关推荐
- live555 学习笔记-建立RTSP连接的过程(RTSP服务器端)
live555 学习笔记-建立RTSP连接的过程(RTSP服务器端) 监听 创建rtsp server,rtspserver的构造函数中,创建监听socket,添加到调度管理器BasicTaskSch ...
- Android学习笔记----解决“com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536”问题
Android学习笔记----解决"com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 6553 ...
- RT-Thread 入门学习笔记 - 解决RT_ASSERT失效的问题
RT-Thread 入门学习笔记 - menuconfig Kconfig的使用 RT-Thread 入门学习笔记 - 熟悉动态内存申请与释放 RT-Thread 入门学习笔记 - 查看线程栈的地址 ...
- JavaScript:学习笔记(7)——VAR、LET、CONST三种变量声明的区别
JavaScript:学习笔记(7)--VAR.LET.CONST三种变量声明的区别 ES2015(ES6)带来了许多闪亮的新功能,自2017年以来,许多JavaScript开发人员已经熟悉并开始使用 ...
- 深度学习笔记(8) 实践层面(三)
深度学习笔记(8) 实践层面(三) 1. 归一化 / 标准化输入 2. 权重初始化 3. 梯度检验 1. 归一化 / 标准化输入 训练神经网络,特征必须要在0到1之间 此时就只能加速训练的方法就是归一 ...
- Timo学习笔记 :Python基础教程(第三版)第四章 当索引行不通时
第四章 当索引行不通时 Timo学习笔记 :Python基础教程(第三版)第三章 使用字符串 这是word编辑的最后一章笔记,第五章开始将直接用这个模板记录. 本章笔记很少,也很简单.很多方法可以到要 ...
- java学习笔记16--I/O流和文件
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note16.html,转载请注明源地址. IO(Input Output)流 IO流用来处理 ...
- [工具]利用EasyRTSPClient工具检查摄像机RTSP流不能播放原因以及排查音视频数据无法播放问题...
出现问题 我们在做流媒体开发的过程中,进程会出现摄像机RTSP流莫名其妙无法播放的问题,而我们常用的vlc经常是直接弹出一个无法播放的提示框就完事了,没有说明出错的原因,或者在vlc的消息里面能看到日 ...
- html播放rtsp流,浏览器播放rtsp视频流解决方案
最近项目中需要实时播放摄像头rtsp视频流,于是就专门做了些研究.而浏览器不能直接播放,只有通过插件或者转码来实现这个需求. 要实现这个目的,可以采用的方案非常得多,有商业的也有开源的,这里主要列举一 ...
最新文章
- 人工智能伦理体系:基础架构与关键问题
- spring的发展||springboot和微服务的介绍
- java中实现接口采用的关键字是_一个Java类实现一个接口使用的是implements关键字。...
- 神探tcpdump第三招
- Oracle服务器修改IP后
- Poor Man's BERT: 更小更快的Transformer模型
- 二叉链表之寻找两节点的最近公共祖先☆
- JS备忘--子父页面获取元素属性、显示时间,iframe之间互相调用函数
- 在JavaScript中从base64字符串创建Blob
- 【渝粤题库】广东开放大学 秘书理论与实务(1) 形成性考核
- linux命令iconv_linux命令系列之iconv
- RSG.CFS.v8.0.2 1CD(综合性通用冷弯型钢构件设计工具)
- MD5简介与代码实现
- cccc2016决赛9
- p20 021 函数:我的地盘听我的
- 旷视科技2023校园招聘提前批正式启动!
- 【数学建模】经典简单例题实例1
- 《惢客创业日记》2019.11.28(周四)近者悦,远者来
- 文件缓存FileCache
- C# 之 垃圾回收机制