流媒体协议之RTSP详解

1、 流媒体协议之RTSP详解

1.1 RTSP概述

RTSP(Real Time Streaming Protocol):实时流媒体协议,是由Real network 和 Netscape共同提出的如何有效地在IP网络上传输流媒体数据的应用层协议,RTSP提供一种可扩展的框架,使能够提供能控制的,按需传输实时数据,如音频流、视频流、metadata; 遵循规范IETF RFC 2326,4567,6064,其语法和操作参考了HTTP/1.1,基于文本的协议,采用ISO10646字符集,使用UTF-8编码;承载RTSP的传输层协议为TCP,默认端口554;如果是RTSP-over-HTTP tunneling,则默认TCP端口为8080;实时流数据由不同的协议传输,比如RTP/RTCP完成数据流和控制命令的传输。

RTSP支持的方法如下:

RTSP流媒体协议交互及码流传输过程中所用的协议如下:

后续会对相关协议进行详细介绍,这些协议相互配合,功能完成了流媒体协议会话及码流传输的过程。

可通过请关注公众号壹零仓,发送消息获取,发送rtsp,获取rtsp相关文章,发送rtp,获取rtp/rtcp相关文章

1.2 RTSP协议交互过程

RTSP协议通常是基于TCP的方式进行协议交互,另外也可基于HTTP,其交互过程有所不通,协议交互主要实现流媒体信息描述/码流通道建立/流媒体控制等功能,这里要区分RTSP协议交互与流媒体码流传输,RTSP协议交互,只做流媒体会话交互功能,通过describe来同步流媒体编码、封装、连接等信息,通过setup来建立流媒体传输通道,通过play来开启流媒体播放,通过teardown来结束播放;流媒体码流的传输是通过RTSP交互建立的流媒体传输通道来传输码流,其传输协议一般为RTP/RTCP,其传输层可以为UDP或者TCP。

1.2.1 RTSP基于TCP交互过程

承载RTSP的协议为TCP,其主要交互过程如下图所示:

RTSP返回的状态码与HTTP类似,各个方法的说明也很简单也不做过多的说明,再开发中,RTSP客户端可以直接发送describe,而无强制要求必须要发送option,describe之后,根据其携带的SDP信息,判断流媒体的编码格式/封装格式/payloadtype/timescale,track标识等信息,客户端保存此信息用于后续码流的解复用和解码,根据track标识去申请想要的类型的码流,客户端通过setup来建立码流通道,如果有多路,需要根据不通的track 调用setup方法多次,一般setup建立通道可以是rtp/avp或者rtp/avp/tcp类型,这里标识以rtp传输音视频,前者基于UDP传输,后者基于TCP传输,这里要注意基于UDP传输码流时,需要根据setup交互的信息,单独建立RTP/RTCP两路UDP通道,如果是TCP则与RTSP公用一个TCP通道,通过在RTP/RTCP头加上$开头的四个字节的tcpheader来区分是哪一路的RTP/RTCP,还是RTSP。

1.2.2 RTSP基于HTTP的交互过程

RTSP-over-HTTP tunneling,通过HTTP隧道来传输RTSP协议和媒体流,需要RTSP服务器支持此种方式,开启HTTP隧道监听端口;客户端首先会建立一个链接通过HTTP-GET方法来获取协议响应消息和媒体流,然后再建立一个链路,通过HTTP-POST方法来发送请求消息,两个tcp链接都是长连接,POST 连接中发送RTSP请求消息,一般要进行BASE64编码,来隐藏RTSP信息。数据流的发送封装方式与RTP/TCP一样,通过GET链路发送给客户端,响应消息也是通过GET链路发送给客户端,其流程如下:

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
海康威视是一家专业从事视频监控产品研发和生产的知名企业,其产品使用了一种被称为RTSP(Real Time Streaming Protocol)的协议RTSP协议是一种用于实时流媒体传输的应用层协议RTSP协议的主要作用是实现客户端和服务器之间的媒体数据传输和控制。它允许客户端通过类似于HTTP的请求和响应方式来发送控制命令和获取媒体数据。与HTTP协议相比,RTSP协议更加轻量级,适用于实时性要求高的视频监控场景。 RTSP协议的工作流程如下: 1. 客户端与服务器建立TCP连接。 2. 客户端发送描述请求,获取服务器支持的媒体格式、编码方式等信息。 3. 服务器响应描述请求,提供媒体相关信息。 4. 客户端发送SETUP请求,请求建立传输通道,并指定传输媒体的相关参数。 5. 服务器响应SETUP请求,告知是否成功建立传输通道。 6. 客户端发送播放请求,开始接收媒体数据。 7. 服务器响应播放请求,开始传输媒体数据。 RTSP协议支持多媒体格式和编码方式,比如H.264、MPEG-4和JPEG等。同时,它也支持实时音频和视频的传输,可以满足不同场景的需求。 在海康威视的产品中,RTSP协议可以通过IP摄像机等设备的访问地址获取实时视频流。用户可以通过支持RTSP协议的客户端软件,如视频监控软件或流媒体播放器,来实时观看和控制监控画面。 总结来说,海康威视的RTSP协议是一种用于实时流媒体传输的协议,通过它可以实现客户端与服务器之间的媒体数据传输和控制。它具有轻量级、实时性高等特点,适用于视频监控和流媒体传输等场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值