点击上方 蓝字 关注我们
上一篇我们简单介绍了rtsp协议,本篇我们来看一下rtsp的消息结构!
RTSP消息分为两大类,一类是请求消息(request),一类是回应消息(ressponse)!
1 请求消息(request)
请求消息的格式如下:
说明:
请求消息由方法+URI+RTSP版本开头,之后跟一条或多条消息!
URI:表示接收方的地址,如rtsp://192.168.1.201:554
CR:表示回车
LF:表示换行
RTSP使用消息类型和消息体来表示不同类型的消息。
最后一条消息要使用两个CR LF。
我们通过wireshark的抓包来实际看一个RTSP的请求消息:
如图中所示,该RTSP请求消息的方法为OPTIONS,请求的目标地址为rtsp://192.17.1.63:554,RTSP的版本为1.0;
接下来包含两种类型的消息,第一种为CSeq表示序列号,本次请求的序列号为1(服务器端回复此请求的数据包的序列号也是1);
第二种为User-Agent,表示用户代理,值为 “Lavf58.42.100”;
由于User-Agent为最后一条消息,其后要跟两组回车和换行!
我们接下来看一下回应消息的格式:
2 回应消息(response)
回应消息由RTSP版本+状态码+解释开头,之后跟一条或多条消息!
说明:
状态码:表示状态,同http的返回状态,如200,表示OK
解释:针对状态码的文本解释
同样:最后一条消息也是需要 跟两个回车和换行!
来看抓包文件:
回复消息以Response标识,该消息中RTSP的版本号为1.0;
服务器回复的状态码为401;
针对状态码401的解释为Unauthorized(未授权);
包含两种类型的消息:
一是WWW-Authenticate:告诉请求端授权认证需要的信息;
二是Date:表示当前日期和时间!
好了,这样一来,我们对RTSP消息的结构就有了一个比较全面的了解了!下一篇,我们来讲一讲sdp的详细格式,欢迎持续关注!
扫码关注了解更多
交流群已开启,有需要的朋友,公众号后台回复“交流群”,获取入群方式!
嘿,我知道你 在看 好吗
本文分享自微信公众号 - 视界音你而不同(WorldOfVideoAndAudio)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
来源:oschina
链接:https://my.oschina.net/u/4579542/blog/4662011