RTSP协议 RTP协议
RTSP(Real-Time Streaming Protocol)实时流式协议
需要注意的是,RTSP本身不传输数据,音视频流数据是通过RTP传输的。
C/S请求应答整体流程:
客户端->>服务器:DESCRIBE
服务器->>客户端: 200 OK (SDP)
客户端->>服务器:SETUP
服务器->>客户端: 200 OK
客户端->>服务器:PLAY
服务器->>客户端: (RTP包)
RTSP请求报文的结构如下图所示
RTSP响应报文的结构如下图所示
一次完整的会话抓包分析:
可以看到抓包序列从407到419为客户端与服务端信息交互的过程,从420开始则是服务端用RTP发送过来的音视频流数据。
RTP(Real-Time Transport Protocol)实时运输协议是IEFT的AVT工作组开发的协议,为实时应用提供端到端的运输服务,但不提供任何服务质量的保证,它有两种工作模式:TCP 和 UDP。
RTP协议构造很简单,它就是在音视频数据的头部加上RTP的数据头来区分识别音视频流数据,以确保客户端能正确解析数据而已。
RTP协议头数据犹如结构体:
typedef struct RtpHdr_s
{#if (BYTE_ORDER == LITTLE_ENDIAN)/* byte 0 */u16 cc :4; /* CSRC count */u16 x :1; /* header extension flag */u16 p :1; /* padding flag */u16 version :2; /* protocol version *//* byte 1 */u16 pt :7; /* payload type */u16 marker :1; /* marker bit */
#elif (BYTE_ORDER == BIG_ENDIAN)/* byte 0 */u16 version :2; /* protocol version */u16 p :1; /* padding flag */u16 x :1; /* header extension flag */u16 cc :4; /* CSRC count *//*byte 1*/u16 marker :1; /* marker bit */u16 pt :7; /* payload type */
#else#error YOU MUST DEFINE BYTE_ORDER == LITTLE_ENDIAN OR BIG_ENDIAN !
#endif/* bytes 2, 3 */u16 seqno :16; /* sequence number *//* bytes 4-7 */int ts; /* timestamp in ms *//* bytes 8-11 */int ssrc; /* synchronization source */
}RtpHdr_t;
参考列表:
RTSP协议详解(转载)_黑面狐-CSDN博客_rtsp协议
RTSP协议实例分析_dosthing的博客-CSDN博客_rtsp协议
RTSP协议 RTP协议相关推荐
- 音视频学习之rtsp学习rtp协议的理解(rtp)
1:理论理解相关细节 实际的媒体数据(视频/音频)的传输是通过rtp进行传输的. rtp可以基于udp进行发送,也可以基于tcp进行发送. (这个有点疑问,看很多都说rtp是基于udp传输) ==&g ...
- 音视频协议-RTP协议
1 协议简介 音视频传输的基石:RTP和RTCP.对于协议的讲解主要是是对于RFC文档的阅读和理解.不同的使用场景用到的字段也有所侧重,RTP和RTCP定义在RFC3550中.其中RTP用于数据流的传 ...
- HTTP RTSP RTMP RTP 协议简说 流媒体学习(一)
2019独角兽企业重金招聘Python工程师标准>>> HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:Wo ...
- 音视频协议-RTP协议打包
目录 H264打包RTP的方法 RTP打包AAC 1. H264打包RTP的方法 RTP的特点不仅仅支持承载在UDP上,这样利于低延迟音视频数据的传输,另外一个特点是它允许通过其它协议接收端和发送端协 ...
- 实时传输协议——RTP协议
随着以太网音视频桥接(AVB)技术的引入,汽车可支持各种基于音频.视频的流媒体服务.在流媒体数据传输过程中,为保障音视频流的实时传输,需采用RTP和RTCP协议.接下来,我们一起来了解下实时传输协议吧 ...
- webrtc 和 rtp 协议
我会开辟一个空间rtp协议,包含vp9 h264 h265 aac opus 等rtp实例,包含实例代码,让看文章的人得到真实的提升 一.webrtc rtp协议为实时传输协议 real transf ...
- 【视频】视频传输协议:RTSP、RTP、RTCP、RTMP、HTTP
一.RTSP.RTP.RTCP RTSP.RTP.RTCP是一组协议,其中RTSP在应用层.RTP和RTCP在传输层.RTP用于传输流媒体数据,而RTCP对RTP进行控制.同步. 二.RTSP.RTM ...
- 流媒体服务器之rtp协议,rtcp协议,rtsp协议,sdp协议,sip协议简析
0.前言 流媒体服务器做音视频媒体传输主要就两件事:媒体回话协商,媒体数据传输:下面这几种协议就围绕着这两个需求而产生. 1.rtp协议 rtp的全称是实时传输协议RTP(Real-time Tran ...
- php视频流传输,视频流传输协议RTP/RTCP/RTSP/HTTP的区别
用一句简单的话总结:RTSP发起/终结流媒体.RTP传输流媒体数据.RTCP对RTP进行控制,同步.之所以以前对这几个有点分不清,是因为CTC标准里没有对RTCP进行要求,因此在标准RTSP的代码中没 ...
最新文章
- Win32 API 和 ODBC 访问数据库一
- 程序员笔试面试基础知识资料整理
- 电商网站模板_阿里云建站:模板建站与定制建站怎么选(小白参考)
- Executors浅析
- 利用Gitee搭建个人图床(上)
- 少儿编程孩子的学习路线
- springboot+vue旅行社旅游拼团系统java
- 微信小程序开发者工具构建npm
- 数组的定义,一维数组,二维数组与变长数组
- 【SQL】CAST()函数,(CAST AS decimal)
- 爆刷PAT(甲级)——之【1148】 Werewolf - Simple Version(20 分)——思维
- 解决:charles连接代理后不能使用苹果支付的问题
- Arkime 2.7(原Moloch)docker镜像构建
- 数字孪生技术在工业制造领域的研究与实践
- 关于TASSEL_5的一个小问题
- Android简单笔记本解析,成功入职头条月薪35K
- 亚马逊五点需要转换成html,亚马逊listing五点描述怎么写才能提高转化率?
- 多张图片怎么合成gif?
- 为你重新系统梳理下, Web 体验优化中和图有关的那些事(万字长文)
- 【随想录12】01背包练习