RTSP协议 Interleaved模式 RFC 2326

RTSP可用于向服务器拉去媒资, 邀请服务器加入会与或者向演示中加入额外的媒资.

RTSP服务器记录连接的状态, 可以基于可靠连接或者不可靠连接.

Interleaved模式

用途: 用于某些环境下, RTSP协议必须和数据混织在一起

缺点: 增加了复杂度

条件: 只能用于TCP_RTSP

方法: RTP包被两个$包裹, 后面跟着1字节的channel标识符, 后面跟着二进制被包裹的长度, (占用两字节, 网络序), 后面紧跟着流数据, 后面不仅没有CRLF, 反而包含了上层协议的头部. 每一个$包括了一个上层协议单元, 比如RTP.

当上层协议是RTP的时候, server还要同时在TCP中交织RTCP消息. 缺省值是在TCP包在第一个可用channel发送

C->S: SETUP rtsp://foo.com/bar.file RTSP/1.0
 CSeq: 2
 Transport: RTP/AVP/TCP;interleaved=0-1

 S->C: RTSP/1.0 200 OK
 CSeq: 2
 Date: 05 Jun 1997 18:57:18 GMT
 Transport: RTP/AVP/TCP;interleaved=0-1
 Session: 12345678

 C->S: PLAY rtsp://foo.com/bar.file RTSP/1.0
 CSeq: 3
 Session: 12345678

 S->C: RTSP/1.0 200 OK
 CSeq: 3
 Session: 12345678
 Date: 05 Jun 1997 18:59:15 GMT
 RTP-Info: url=rtsp://foo.com/bar.file;
 seq=232433;rtptime=972948234

 S->C: $\000{2 byte length}{"length" bytes data, w/RTP header}
 S->C: $\000{2 byte length}{"length" bytes data, w/RTP header}
 S->C: $\001{2 byte length}{"length" bytes RTCP packet}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容