企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] ## 语法 ### 请求格式 与HTTP 语法基本相同 ``` COMMAND rtsp_URL RTSP/1.0<CRLF> Headerfield1: val1<CRLF> Headerfield2: val2<CRLF> ... <CRLF> [Body] ``` RTSP 消息行之间用回车换行 (CRLF) 分隔. 一个空行表示消息头部分的结束。 语法说明 ``` rtsp_URL: 可使用如下格式,rtsp://<servername>/live.mp4[?<param>=<value>[&<param>=<value>...]] ``` #### 公用请求头 | 头字段 | 描述 | | --- | --- | | Authorization | 客户端的认证信息. | | CSeq | 请求序列号. | | Session | 会话 ID (返回自服务端的 SETUP 应答). | | Content-Length | 内容的长度. | | Content-Type | 内容的媒体类型. | | User-Agent | 关于创建这个请求的客户端的信息. | | Require | 查询是否支持指定的选项,不支持的选项会在 Unsupported 头中列出. | ### 响应语法 ``` RTSP/1.0 <Status Code> <Reason Phrase> <CRLF> Headerfield3: val3<CRLF> Headerfield4: val4<CRLF> ... <CRLF> [Body] ``` ### 公用响应请求头 | 头字段 | 描述 | | --- | --- | | CSeq | 应答序列号 (和请求序列匹配). | | Session | 会话 ID. | | WWW-Authenticate | 客户端的认证信息. | | Date | 应答的日期和时间. | | Unsupported | 服务端不支持的特性和功能. | ## 全部方法 |方法|方向|对象|要求|含义| |---|---|---|---|---| |DESCRIBE|C->S|P,S|推荐|检查演示或媒体对象的描述,也允许使用接收头指定用户理解的描述格式。DESCRIBE的答复-响应组成媒体RTSP初始阶段| |ANNOUNCE|C->S S->C|P,S|可选|当从用户发往服务器时,ANNOUNCE将请求URL识别的演示或媒体对象描述发送给服务器;反之,ANNOUNCE实时更新连接描述。如新媒体流加入演示,整个演示描述再次发送,而不仅仅是附加组件,使组件能被删除| |GET_PARAMETER|C->S S->C|P,S|可选|GET_PARAMETER请求检查RUL指定的演示与媒体的参数值。没有实体体时,GET_PARAMETER也许能用来测试用户与服务器的连通情况| |OPTIONS|C->S S->C|P,S|要求|可在任意时刻发出OPTIONS请求,如用户打算尝试非标准请求,并不影响服务器状态| |PAUSE|C->S|P,S|推荐|PAUSE请求引起流发送临时中断。如请求URL命名一个流,仅回放和记录被停止;如请求URL命名一个演示或流组,演示或组中所有当前活动的流发送都停止。恢复回放或记录后,必须维持同步。在SETUP消息中连接头超时参数所指定时段期间被暂停后,尽管服务器可能关闭连接并释放资源,但服务器资源会被预订| |PLAY|C->S|P,S|要求|PLAY告诉服务器以SETUP指定的机制开始发送数据;直到一些SETUP请求被成功响应,客户端才可发布PLAY请求。PLAY请求将正常播放时间设置在所指定范围的起始处,发送流数据直到范围的结束处。PLAY请求可排成队列,服务器将PLAY请求排成队列,顺序执行| |RECORD|C->S|P,S|可选|该方法根据演示描述初始化媒体数据记录范围,时标反映开始和结束时间;如没有给出时间范围,使用演示描述提供的开始和结束时间。如连接已经启动,立即开始记录,服务器数据请求URL或其他URL决定是否存储记录的数据;如服务器没有使用URL请求,响应应为201(创建),并包含描述请求状态和参考新资源的实体与位置头。支持现场演示记录的媒体服务器必须支持时钟范围格式,smpte格式没有意义| |REDIRECT|S->C|P,S|可选|重定向请求通知客户端连接到另一服务器地址。它包含强制头地址,指示客户端发布URL请求;也可能包括参数范围,以指明重定向何时生效。若客户端要继续发送或接收URL媒体,客户端必须对当前连接发送TEARDOWN请求,而对指定主执新连接发送SETUP请求| |SETUP|C->S|S|要求|对URL的SETUP请求指定用于流媒体的传输机制。客户端对正播放的流发布一个SETUP请求,以改变服务器允许的传输参数。如不允许这样做,响应错误为"455 Method Not Valid In This State”。为了透过防火墙,客户端必须指明传输参数,即使对这些参数没有影响| |SET_PARAMETER|C->S S->C|P,S|可选|请求设置演示或URL指定流的参数值。请求仅应包含单个参数,允许客户端决定某个特殊请求为何失败。如请求包含多个参数,所有参数可成功设置,服务器必须只对该请求起作用。服务器必须允许参数可重复设置成同一值,但不让改变参数值。注意:媒体流传输参数必须用SETUP命令设置。将设置传输参数限制为SETUP有利于防火墙。将参数划分成规则排列形式,结果有更多有意义的错误指示| |TEARDOWN|C->S|P,S|要求|TEARDOWN请求停止给定URL流发送,释放相关资源。如URL是此演示URL,任何RTSP连接标识不再有效。除非全部传输参数是连接描述定义的,SETUP请求必须在连接可再次播放前发布| > 注:P---演示,C---客户端,S---服务器, S(对象栏)---流