各位前辈大牛,RTP over UDP和RTP over RTSP有什么区别?

chensb666 2013-10-29 05:22:36
1.RTP over UDP和RTP over RTSP有什么区别?
2.RTP over RTSP是不是就是RTP over TCP?
3.RTP over TCP 打包视频是不是要加4个字节的头,是怎么加的?
4.有PS流的封装格式吗?

我的分不多,若是有满意答案,我一定会加分的,请大家帮帮忙,谢谢!
...全文
4717 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
朱韦刚 2015-02-11
  • 打赏
  • 举报
回复
http://blog.csdn.net/zhuweigangzwg/article/details/40373235 二:RTSP、 RTMP、HTTP的区别 共同点: 1:首先看下这个图:RTSP RTMP HTTP都是在应用应用层。 2: 理论上RTSP RTMPHTTP都可以做直播和点播,但一般做直播用RTSP RTMP,做点播用HTTP。 做视频会议的时候原来用SIP协议,现在基本上被RTMP协议取代了。 区别: 1:HTTP: 即超文本传送协议(ftp即文件传输协议)。 HTTP:(Real Time Streaming Protocol),实时流传输协议。 HTTP全称Routing Table Maintenance Protocol(路由选择表维护协议)。 2:HTTP将所有的数据作为文件做处理。http协议不是流媒体协议。 RTMP和RTSP协议是流媒体协议。 3:RTMP协议是Adobe的私有协议,未完全公开,RTSP协议和HTTP协议是共有协议,并有专门机构做维护。 4:RTMP协议一般传输的是flv,f4v格式流,RTSP协议一般传输的是ts,mp4格式的流。 HTTP没有特定的流。 5:RTSP传输一般需要2-3个通道,命令和数据通道分离,HTTP和RTMP一般在TCP一个通道上传输命令和数据。 三:RTSP、RTCP、RTP区别 1:RTSP实时流协议 作为一个应用层协议,RTSP提供了一个可供扩展的框架,它的意义在于使得实时流媒体数据的受控和点播变得可能。总的说来,RTSP是一个流媒体表示协议,主要用来控制具有实时特性的数据发送,但它本身并不传输数据,而是必须依赖于下层传输协议所提供的某些服务。RTSP可以对流媒体提供诸如播放、暂停、快进等操作,它负责定义具体的控制消息、操作方法、状态码等,此外还描述了与RTP间的交互操作(RFC2326)。 2:RTCP控制协议 RTCP控制协议需要与RTP数据协议一起配合使用,当应用程序启动一个RTP会话时将同时占用两个端口,分别供RTP和RTCP使用。RTP本身并不能为按序传输数据包提供可靠的保证,也不提供流量控制和拥塞控制,这些都由RTCP来负责完成。通常RTCP会采用与RTP相同的分发机制,向会话中的所有成员周期性地发送控制信息,应用程序通过接收这些数据,从中获取会话参与者的相关资料,以及网络状况、分组丢失概率等反馈信息,从而能够对服务质量进行控制或者对网络状况进行诊断。 RTCP协议的功能是通过不同的RTCP数据报来实现的,主要有如下几种类型: SR:发送端报告,所谓发送端是指发出RTP数据报的应用程序或者终端,发送端同时也可以是接收端。(SERVER定时间发送给CLIENT)。 RR:接收端报告,所谓接收端是指仅接收但不发送RTP数据报的应用程序或者终端。(SERVER接收CLIENT端发送过来的响应)。 SDES:源描述,主要功能是作为会话成员有关标识信息的载体,如用户名、邮件地址、电话号码等,此外还具有向会话成员传达会话控制信息的功能。 BYE:通知离开,主要功能是指示某一个或者几个源不再有效,即通知会话中的其他成员自己将退出会话。 APP:由应用程序自己定义,解决了RTCP的扩展性问题,并且为协议的实现者提供了很大的灵活性。 3:RTP数据协议 RTP数据协议负责对流媒体数据进行封包并实现媒体流的实时传输,每一个RTP数据报都由头部(Header)和负载(Payload)两个部分组成,其中头部前12个字节的含义是固定的,而负载则可以是音频或者视频数据。 RTP用到的地方就是 PLAY ,服务器往客户端传输数据用UDP协议,RTP是在传输数据的前面加了个12字节的头(描述信息)。 RTP载荷封装设计本文的网络传输是基于IP协议,所以最大传输单元(MTU)最大为1500字节,在使用IP/UDP/RTP的协议层次结构的时候,这其中包括至少20字节的IP头,8字节的UDP头,以及12字节的RTP头。这样,头信息至少要占用40个字节,那么RTP载荷的最大尺寸为1460字节。以H264 为例,如果一帧数据大于1460,则需要分片打包,然后到接收端再拆包,组合成一帧数据,进行解码播放。
  • 打赏
  • 举报
回复
普京说的很对。。
Putin_yhc 2014-02-20
  • 打赏
  • 举报
回复 1
rtp和rtsp协议是应用层的,tcp和udp是传输层的,所以只能说rtp over tcp/udp。而且一般情况下一个点播需要rtsp+rtp+rtcp三个协议共同来实现。 RTP,RTCP数据和RTSP数据共享TCP数据通道,所以必须有一个标识来区别三种数据。RTP和RTCP数据会以$符号+1个字节的通道编号+4个字节的数据长度,共6个字节的前缀开始,RTSP数据是没有前缀数据的。RTP数据和RTCP数据的区别在于第二个字节的通道编号,据观察RTP通道编号是偶数,RTCP通道编号是奇数。
smilestone322 2014-01-06
  • 打赏
  • 举报
回复
1.RTP over UDP和RTP over RTSP有什么区别? 不一样,RTP overUDP 是RTP下层使用udp传输,RTP over RTSP 是指的用rtsp协议建立会话,然后使用RTP协议传输数据; 2.RTP over RTSP是不是就是RTP over TCP? 不是:RTP over RTSP 是指的用用rtsp协议建立会话,然后使用RTP协议传输数据; 至于下面用udp 还是tcp是不确定的 3.RTP over TCP 打包视频是不是要加4个字节的头,是怎么加的? 需要看rfc3984 4.有PS流的封装格式吗? PS,TS,ES都有
ayuppie 2013-12-23
  • 打赏
  • 举报
回复
google一下,就搞定这些概念了。当然动手做了,你就明白了。
freelancer_ex 2013-12-17
  • 打赏
  • 举报
回复
看看rtsp协议你就都知道了
dqzhangp 2013-12-17
  • 打赏
  • 举报
回复
看rfc2326

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧