RTCP&RTP协议格式分析2:RTP

浏览:
字体:
发布时间:2013-12-10 00:03:30
来源:
RTCP&RTP协议格式分析2:RTP
 
RTP头有以下格式:
 
  0                     1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |V=2|P|X|  CC   |M|     PT      |       sequence number                                       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           timestamp                                                                         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           synchronization source (SSRC) identifier                                           |
   +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
   |            contributing source (CSRC) identifiers                                             |
   |                             ....                                                                                   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 
前12个字节出现在每个RTP包中,仅仅在被混合器插入后,才出现CSRC列表。
 
~~~~~~~~~下面开始分析各个字段的意义:
 
版本号:2位,值为2.
 
填充P:1位:
 
若填料比特被设置,则此包包含一到多个附加在末端的填充比特,填充比特不算作
 
负载的一部分。填充的最后一个字节指明可以忽略多少个填充比特(包括它自己)。填充可能用于某些具有固定长度的加密算法,或者用于在底层数据单元中传输多个RTP包。
 
~~~~~~~
 
 X:扩展位,如果设置了,表示固定头后面跟着一个头扩展。
 
CC:4比特CSRC计数包含了跟在固定头后面CSRC识别符的数目。
 
标志(M):1比特标志的解释由具体协议规定。它用来允许在比特流中标记重要的事件,如帧边界。
 
~~~~~~~~
 
负载类型(7位): 定义了负载的格式,
 
序列号: sequence number,16位,每发送一个RTP报文,序列号加1。
 
时间戳:标志了数据的第一个字节的采样时间,初始值是随机的,
 
 即RTP时间戳记录当前是第几个采样数据,NTP时间戳记录当前数据包相对于参考时钟(1900年1月1日0点算起,当前时间相对于该时刻所经过的秒数)的绝对时间
 
~~~~~~~~~~~~
 
SSRC:32位,随机生成。
 
CSRC列表:0到15项,每项32位,个数由CC域决定。
 
 
>更多相关文章
24小时热门资讯
24小时回复排行
资讯 | QQ | 安全 | 编程 | 数据库 | 系统 | 网络 | 考试 | 站长 | 关于东联 | 安全雇佣 | 搞笑视频大全 | 微信学院 | 视频课程 |
关于我们 | 联系我们 | 广告服务 | 免责申明 | 作品发布 | 网站地图 | 官方微博 | 技术培训
Copyright © 2007 - 2024 Vm888.Com. All Rights Reserved
粤公网安备 44060402001498号 粤ICP备19097316号 请遵循相关法律法规
');})();