上一篇介绍了RTSP的GET_PARAMETER消息,看到这个消息类型,我们很容易习惯性的想到应该还要有一个RTSP_SET_PARAMETER消息,如我我们所愿,RTSP确实有这样一条消息,本篇我们来看一看!
SET PARAMETER作用
SET_PARAMETER方法用于给URI指定的流地址设置参数。
当客户端想要确定为什么某一个特定的请求失败时,请求应该只包含一个参数。
如果请求中包含多个参数值,则服务器只有在所有的参数被成功设置的情况下,才会生效。
服务器允许某个参数被重复设置成相同的值,但不允许改变参数的值!
SET PARAMETER结构
我们来看一下SET_PARAMETER请求的的结构:
URI表示rtsp的地址;
Rtsp Version表示版本号;
CSeq表示序列号;
Content-length表示内容长度
Content-type表示内容类型;
之后跟着1个或多个参数及对应的值!
我们再来看一下GET_PARAMETER回复的结构:
RtspVersion表示Rtsp的版本号;
状态码和状态描述给出了对于设置某个参数的请求的回复状态,如状态码451,表示无效参数(Invalid Parameter)!
CSeq的值与请求消息的序列号一一对应;
Content-length、Content-type,以及各参数均与SET_PARAMETER的请求是一致的!
由于GET_PARAMTER在实际的开发场景中并不多见,所以抓包文件和实例文件在这里就又缺席了,实在抱歉!
到这里,关于RTSP的主要的一些请求,我们基本就都了解了,当然,RTSP还有一些其他更加细节的请求,在实际中应用较少,就不再做详细介绍了!感兴趣的朋友可以点击https://tools.ietf.org/html/rfc2326去进一步详细了解。下一讲我们来讲讲RTP的相关知识!不见不散!