Live555
bournechen
这个作者很懒,什么都没留下…
展开
-
记录创建流媒体服务器过程(1)
最近有个项目要求,需要用GM8180做一个流媒体服务器(rtsp传输协议)。在GM8180提供的SDK开发包中已经提供了ffmpeg-0.4.8开源包。经过基本分析发现网上也提到一个ffserver对rtsp协议支持的不是很好也不稳定。所以现在有两条路。1 ffserver+ffmpeg优点:已经支持ffmpeg将编码ffm文件直接由接口与ffserver连接。缺点:ffserver中r原创 2009-11-15 21:31:00 · 3026 阅读 · 6 评论 -
live555代码解读之一:RTSP连接的建立过程
RTSPServer类用于构建一个RTSP服务器,该类同时在其内部定义了一个RTSPClientSession类,用于处理单独的客户会话。首先创建RTSP服务器(具体实现类是DynamicRTSPServer),在创建过程中,先建立Socket(ourSocket)在TCP的554端口进行监听,然后把连接处理函数句柄(RTSPServer::incomingConnectionHandl转载 2009-11-13 11:42:00 · 3892 阅读 · 1 评论 -
live555代码解读之二:DESCRIBE请求消息处理过程
RTSP服务器收到客户端的DESCRIBE请求后,根据请求URL(rtsp://192.168.1.109/1.mpg),找到对应的流媒体资源,返回响应消息。live555中的ServerMediaSession类用来处理会话中描述,它包含多个(音频或视频)的子会话描述(ServerMediaSubsession)。 上节我们谈到RTSP服务器收到客户端的连接请求,建立了RTSPC转载 2009-11-13 11:44:00 · 2988 阅读 · 0 评论 -
live555代码解读之三:SETUP和PLAY请求消息处理过程
SETUP请求消息处理过程 前面已经提到RTSPClientSession类,用于处理单独的客户会话。其类成员函数handleCmd_SETUP()处理客户端的SETUP请求。调用parseTransportHeader()对SETUP请求的传输头解析,调用子会话(这里具体实现类为OnDemandServerMediaSubsession)的getStreamParamet转载 2009-11-13 11:45:00 · 3162 阅读 · 0 评论