live555
NBA_1
这个作者很懒,什么都没留下…
展开
-
live555学习笔记13-RTPInterface详解
十三:RTPInterface详解好几天没写blog了。看源码真累啊,还要把理解的写到纸上,还要组织混乱的思想,令人头痛,所以这需要激情。不过,今天激情又来了。大家应该已理解了GroupSocket这个类。理论上讲那些需要操作udp socket 的类应保存GroupSocket的实例。但事实并不是这样,可以看一下RTPSink,RTPSource,RTCPInstance等,它们都没有保存G...转载 2019-11-27 14:58:01 · 207 阅读 · 0 评论 -
live555代码分析
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/wellima/article/details/77978716Live555Live555是一个跨平台的C++开源项目,为流媒体提供解决方案,实现了RTP/RTCP、RTSP、SIP等标准流媒体传输协议。Live555实现了音视频数...转载 2019-10-31 11:18:10 · 795 阅读 · 0 评论 -
live555源代码学习(处理SETUP PLAY PAUSE TEARDOWN等过程)(服务端)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/weixin_42718004/article/details/904464351、分别的含义SETUP:告知服务器以TCP/UDP建立RTP、RTSP连接,并告知端口号PLAY:告知服务器可以开始用RTP协议传输数据过来了PAUS...转载 2019-10-29 15:20:48 · 273 阅读 · 0 评论 -
rtsp时间戳计算方法
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/lipku/article/details/17800651Rtsp的拖放和快放、慢放都是先pause,再play,根据play消息包中的range和scale参数来实现。对应到live555中,pause时调用sendPauseCom...转载 2019-10-29 14:42:40 · 1526 阅读 · 0 评论 -
RTSP客户端接收存储数据(live555库中的testRTSPClient实例)
1、testRTSPClient简介testRTSPClient是个简单的客户端实例,这个实例对rtsp数据交互作了详细的描述,其中涉及到rtsp会话的两个概念Source和Sink.Source是生产数据,Sink是消费数据.testRTSPClient非常简洁,除了接收服务端发送过来的数据,什么都没干,所以我们很方便在这个基础上改造,做我们自己的项目.2、testRTSPClient编...转载 2019-09-03 10:07:59 · 718 阅读 · 0 评论 -
live555 使用testRTSPClient 接收h264记录
参考自网络,自己测试通过。特记录如下:使用live555 客户端 testRTSPClient.cpp修改如下:void DummySink::afterGettingFrame(unsigned frameSize, unsigned numTruncatedBytes,struct timeval presentationTime, unsigned /durationInMicrose...转载 2019-09-03 10:09:55 · 562 阅读 · 2 评论 -
庖丁解牛-----Live555源码彻底解密(testRTSPClient流程图)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/smilestone322/article/details/17297817通过TestRtspClient的例子,对rtsp数据流程有深入的了解,比如rtsp如何建立,rtsp source和sink怎么交互数据等;1)describ...转载 2019-09-03 10:16:03 · 529 阅读 · 0 评论 -
live555学习笔记8-RTSPClient分析
八 RTSPClient分析有RTSPServer,当然就要有RTSPClient。如果按照Server端的架构,想一下Client端各部分的组成可能是这样:因为要连接RTSP server,所以RTSPClient要有TCP socket。当获取到server端的DESCRIBE后,应建立一个对应于ServerMediaSession的ClientMediaSession。对应每个Trac...转载 2019-09-03 20:36:10 · 293 阅读 · 0 评论 -
基于live555的rtsp客户端接收及ffmpeg解码
很多人用live555都是为了做一个rtsp的客户端。Live555提供了一个功能丰富的rtsp客户端:openRTSP。很多初学者都是通过它来学习live及rtsp的。这个程序修改做单路播放很容易,不过,一般客户端需要同时做多路播放或录像,这时再采用这个程序就比较麻烦了。而且,程序里也注明:// NOTE: If you want to develop your own RTSP clien...转载 2019-09-04 15:41:03 · 792 阅读 · 0 评论 -
incomingDataHandler、incomingReportHandler和networkReadHandler的区别
记录一下问题从摄像头接收到的数据走networkReadHandler,从视频平台接收到的数据走incomingDataHandlerincomingDataHandler是RTSPClient类的一个函数,是一个会话回调;该socket是在RTSPClient的openConnection函数中通过调用setupStreamSocket方法创建,用于连接554端口。networkRead...原创 2019-09-14 17:44:27 · 262 阅读 · 0 评论 -
live555 设置RTP over RTSP(TCP)
live555工程中testprogs作为一个简单的rtsp客户端,默认采用udp进行音视频数据的传输,如果需要使用tcp进行数据的传输,可以进行如下代码的修改:testRTSPClient.cpp文件#define REQUEST_STREAMING_OVER_TCP True即可源代码// By default, we request that the server stream it...转载 2019-09-16 09:35:10 · 908 阅读 · 0 评论 -
live555客户端同时开多个视频会花屏(待验证)
把倒数第二个参数改成了true了,就好了rtspClient->sendSetupCommand(*scs.subsession, continueAfterSETUP, false, true,false);转载 2019-09-25 09:59:21 · 411 阅读 · 0 评论 -
用live555接收码流花屏,视频下方出现条状马赛克,用ffplay报如下错误:concealing 1176 DC, 1176 AC, 1176 MV errors in I frame
问题描述:用live555接收码流花屏,视频下方出现条状马赛克,用ffplay报如下错误:concealing 1176 DC, 1176 AC, 1176 MV errors in I frame产生问题的原因:缓冲区大小不够造成,I帧解码出现错误,将DUMMY_SINK_RECEIVE_BUFFER_SIZE调大一些即可。参考文献:https://blog.csdn.net/cabb...原创 2019-09-26 15:05:04 · 1944 阅读 · 1 评论 -
live555 Handler调用函数顺序
fHandler调用顺序:1、RTSPClient----------->ConnectionHandler2、RTSPClient----------->IncomingDataHandler3、RTCPInstance------->IncomingReportHandler4、MultiFramedRTPSource----->networkReadHandl...原创 2019-08-29 16:26:39 · 300 阅读 · 0 评论 -
live555学习笔记
转自https://www.cnblogs.com/oloroso/p/7223353.html早前阅读live555源码的时候做了一些简单的笔记。现在看来那个时候对C++的理解还是不够,还有很多不足。当时对很多名词也不是很熟悉,对一些类的描述也很生硬,所以笔记中有一些不通畅之处。阅读live555是当时在流媒体服务器组的时候阅读的,后来应公司安排,改去做snmp协议支持,就少有更新这一部分了...转载 2019-08-27 11:02:48 · 157 阅读 · 0 评论 -
live555 关于使用ffmpeg扩展文件格式
live555目前只mpg、mkv、webM等少数几种音视频混合的文件,可以使用ffmpeg来扩展live555所支持的文件格式。花了一个多月的时间,终于可以支持mp4和avi了,媒体格式支持mpeg4、h264、mp3、aac。主要是参考了live555中mpg的实现。1.扩展mediaServer的主要步骤 1)定义一个RTSP Server类MyRTSPSer...转载 2019-04-29 17:16:41 · 683 阅读 · 0 评论 -
live555源码分析
https://www.wolfcstech.com/2017/08/30/live555_src_analysis_infrasture/转载 2019-05-05 14:46:46 · 270 阅读 · 0 评论 -
Live555学习笔记一:入门篇
https://blog.csdn.net/hk627989388/article/details/70570639转载 2019-05-14 17:39:16 · 554 阅读 · 0 评论 -
select()函数以及FD_ZERO、FD_SET、FD_CLR、FD_ISSET
select函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复用输入/输出模型,原型: #include <sys/time.h> #include <unistd.h> int select(int maxfd,fd_set *rdset,fd_set *wrset,fd_set *exset,st...转载 2019-05-07 15:48:44 · 179 阅读 · 0 评论 -
live555 client 接收rtp数据
转自https://blog.csdn.net/freezlz/article/details/210443152014-03-08 22:05:58描述live555 client即openRTSP的流程,简单点说,playCommon.cpp,流为h264和g726。在实际项目中已成功应用。以下为我所见所得,有错误之处请指正,谢谢!1、live555的三种任务s...转载 2019-07-29 20:47:32 · 602 阅读 · 0 评论 -
Wireshark 抓包分析 RTSP/RTP/RTCP 基本工作过程
转自https://www.wolfcstech.com/2017/09/01/live555_src_analysis_rtsp_rtp_rtcp_wireshark/整体而言,RTSP 通常工作于可靠的传输协议 TCP 之上,就像 HTTP 那样,用于发起/结束流媒体传输,交换流媒体元信息。RTP 通常工作于 UDP 之上,用于传输实际的流媒体数据,其中的载荷格式因具体流媒体类型的不同而不同...转载 2019-07-29 21:05:46 · 536 阅读 · 0 评论 -
do{...}while(0)的妙用
转自https://www.jianshu.com/p/99efda8dfec91.帮助定义复杂的宏以避免错误举例来说,假设你需要定义这样一个宏:#define DOSOMETHING() foo1(); foo2();这个宏的本意是,当调用DOSOMETHING()时,函数foo1()和foo2()都会被调用。但是如果你在调用的时候这么写:if(a>0)DOSOMETHING(...转载 2019-07-30 12:00:45 · 143 阅读 · 0 评论 -
RTP报文解析示例
以太网:Dest物理地址:207918d3a1fdSource物理地址:7405a5058fd4Type:0800(IPV4)IPV4:Header:4500Total Length:05bc(1468)identification:2fc9flags:40Frament Offset:00Time to Live:3f(63)Protocol:11(17,UDP)H...原创 2019-08-13 17:01:30 · 2694 阅读 · 0 评论 -
RTP Payload H264
一、简介1.RTP和RTCPRTP全名是Real-time Transport Protocol(实时传输协议)。它是IETF提出的一个标准,对应的RFC文档为RFC3550(RFC1889为其过期版本)。RFC3550不仅定义了RTP,而且定义了配套的相关协议RTCP(Real-time Transport Control Protocol,即实时传输控制协议)。RTP被定义为在一对一或一对...转载 2019-08-15 15:32:39 · 452 阅读 · 0 评论 -
Live555学习笔记14-live555多线程论
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/nkmnkm/article/details/7034414十四:live555多线程论江湖传闻:live555如果不改为多线程,在多核心机器上效率会降低.虽然我没做过测试,但比较相信此传闻的真实性 .所以在我试论述一下live55...转载 2019-08-27 10:35:32 · 326 阅读 · 0 评论 -
LIVE555再学习 -- Windows 下编译
转自https://blog.csdn.net/qq_29350001/article/details/77962082转载 2019-04-29 15:32:18 · 133 阅读 · 0 评论