学习rtsp的一些心得
来源:互联网 发布:linux 启动ftp服务 编辑:程序博客网 时间:2024/05/20 11:51
今天仔细的研究了rtsp,大有所获,现在总结下这方面的知识:
rtsp初步来说分为两阶段:
第一阶段:
客户端和rtsp服务器端进行交互,也就是术语中所说的会话阶段
第二阶段:
流媒体数据交互阶段,将数据按照rtp+rfc3984拆包由流媒体服务器发送到播放器客户端,然后客户端这边重新组包
上面的理解的比较的肤浅,我本人是用VLC和自己写的程序在自己的电脑上做的测试。
现在要跟大家说的核心,是数据发送的协议问题,这个协议指的是UDP还是TCP的Stream模式。
最初我是这样认为的:
RTSP走UDP形式,所以最先开始,我直接在在vlc中调用rtsp://192.168.1.143:2725这样,然后在用JAVA写了个监听程序来监听2725端口,但是压根就没有数据过来,于是我猜测难不成走的是tcp形式,于是我用ServerSocket来监听2725的端口,重新用VLC来了一次,令我惊奇的是,接受到了数据:
ESCRIBE rtsp://120.197.4.28:554/ RTSP/1.0
CSeq: 3
User-Agent: LibVLC/1.1.9 (LIVE555 Streaming Media v2011.01.06)
Accept: application/sdp
后来用wireshark抓包分析了很多码流,得出了结论:
rtsp初步来说分为两阶段:
第一阶段:
客户端和rtsp服务器端进行交互,也就是术语中所说的会话阶段
第二阶段:
流媒体数据交互阶段,将数据按照rtp+rfc3984拆包由流媒体服务器发送到播放器客户端,然后客户端这边重新组包
上面的理解的比较的肤浅,我本人是用VLC和自己写的程序在自己的电脑上做的测试。
现在要跟大家说的核心,是数据发送的协议问题,这个协议指的是UDP还是TCP的Stream模式。
最初我是这样认为的:
RTSP走UDP形式,所以最先开始,我直接在在vlc中调用rtsp://192.168.1.143:2725这样,然后在用JAVA写了个监听程序来监听2725端口,但是压根就没有数据过来,于是我猜测难不成走的是tcp形式,于是我用ServerSocket来监听2725的端口,重新用VLC来了一次,令我惊奇的是,接受到了数据:
ESCRIBE rtsp://120.197.4.28:554/ RTSP/1.0
CSeq: 3
User-Agent: LibVLC/1.1.9 (LIVE555 Streaming Media v2011.01.06)
Accept: application/sdp
后来用wireshark抓包分析了很多码流,得出了结论:
在RTSP的会话阶段用的走的TCP协议,或者专业术语叫RTSP协议,然后具体的到了数据交互的过程中的时候,就走的是UDP的形式了或者专业术语叫做RTP协议.
- 学习rtsp的一些心得
- 学习的一些心得
- css学习的一些心得
- css学习的一些心得
- 学习c的一些心得
- css学习的一些心得
- 学习Hibernate的一些心得
- 学习Hibernate的一些心得
- 学习.net的一些心得
- 学习OpenCL的一些心得
- 学习tinyXML的一些心得 Goldou
- 关于WTL学习的一些心得
- jsp学习的一些记录心得
- 最近学习ADO.NET 的一些心得
- 学习uC/OS的一些心得
- 学习WebLogic11g集群搭建的一些心得
- 国庆假期学习html的一些心得
- 学习C语言的一些心得!
- 使用Javascript和PHP对服务端XML文档进行操作
- linux /dev 常见特殊设备介绍与应用[loop,null,zero,full,random]
- DHH推荐的五本书(未完待续)
- GetInputAwayTime
- [J2EE][SERVLET]OUT.PRINT和OUT.WRITE的区别
- 学习rtsp的一些心得
- uva 10795 A Different Task
- 1. x-loader执行流程分析
- c/c++/objective-c对于大端小端的判断分析
- [iphone]NSArray和NSMutableArray
- 紧邻算法分类器之模拟图(实现模拟)(三)
- 简单的分页(第一种)
- Time Machine 教程 OS X系统备份恢复还原教程
- [C#]手把手教你打造Socket的TCP通讯连接(一)