最近完成了一RTSP代理网关,这是第二次开发做RTSP协议相关的开发工作了,相比11年的简单粗糙的版本,这次在底层TCP/IP通讯和RTSP协议上都有了一些新的积累,这里记录一下。基本的RTSP协议交互流程去读rfc2326就可以了,这里就不赘述了。这里说一些实际用VLC/MPlayer进行测试时,...
分类:
其他好文 时间:
2014-11-30 23:05:33
阅读次数:
359
http://www.cnblogs.com/nightwatcher/archive/2011/04/10/2011158.html最近在看LIVE555的源码,感觉其中的延时队列写的不错,于是就总结一下。 首先描述一下LIVE555中的延时队列的设计理念。首先,如下图,A,B,C分别为时间轴上的...
分类:
其他好文 时间:
2014-11-30 19:54:03
阅读次数:
136
网上的方案我没有使用。对于只有一个网卡的主机来说,它的ip只有一个。可用shell命令获取到这个ip。官方的live555的live/groupsock/GroupsockHelper.cpp里面的函数ourIPAddress如下: 1 netAddressBits ourIPAddress(Us....
分类:
其他好文 时间:
2014-11-29 15:57:56
阅读次数:
2116
http://www.cppblog.com/tx7do/archive/2014/05/31/207155.aspxhttp://blog.csdn.net/sunkwei/article/details/6605314http://www.cnblogs.com/mlj318/archive/2...
分类:
其他好文 时间:
2014-11-25 23:09:13
阅读次数:
169
DynamicRTSPServer::creatnew():1.调用继承自RTPSever::setUpOurSocket:1.调用 GroupsockHelper 的 setupStreamSocket创建一个socket连接,并绑定,2.设置socket的发送缓存大小,3.调用listen开始监...
分类:
其他好文 时间:
2014-11-17 15:42:26
阅读次数:
191
Mediumlive555几乎所有的处理单元都继承自Medium类;该类抽象了基本的接口,包括环境,task和媒体名和媒体查找函数(lookupByName)以及一些辅助函数。也包括返回当前的环境类UsageEnvironment,以及环境指向下一个TaskToken的指针nextTask等。Ser...
分类:
其他好文 时间:
2014-11-17 15:39:11
阅读次数:
121
liveMedia项目的源代码包括四个基本的库,各种测试代码以及Media Server。四个基本的库分别是:UsageEnvironment&TaskScheduler, groupsock, liveMedia和BasicUsageEnvironment。1,基础类介绍:BasicUsageEn...
分类:
其他好文 时间:
2014-11-17 15:34:39
阅读次数:
256
#include "liveMedia.hh"#include "BasicUsageEnvironment.hh"#include "GroupsockHelper.hh"UsageEnvironment* env;portNumBits tunnelOverHTTPPortNum = 0;con...
分类:
其他好文 时间:
2014-11-17 15:34:07
阅读次数:
104
这里主要分析一下,live555中关于RTP打包发送的部分。在处理完PLAY命令之后,就开始发送RTP数据包了(其实在发送PLAY命令的response包之前,就会发送一个RTP包,这里传输就已经开始了)先介绍下主要的流程:RTP包的发送是从MediaSink::startPlaying函数调用开始...
分类:
其他好文 时间:
2014-11-17 15:28:48
阅读次数:
172
海康:rtsp://[username]:[password]@[ip]:[port]/[codec]/[channel]/[subtype]/av_stream说明:username: 用户名。例如admin。password: 密码。例如12345。ip: 为设备IP。例如 192.0.0.64...
分类:
其他好文 时间:
2014-11-17 12:14:34
阅读次数:
232