尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

协议之RTCP介绍

协议之RTCP介绍
📅 发布时间:2026/7/4 9:58:10

RTCP(RTP Control Protocol)RTP 控制协议,和 RTP 成对使用,主要职责为:

  • 媒体同步:通过 NTP 时间戳实现音视频同步
  • 质量反馈:报告丢包率、抖动等统计信息
  • 成员管理:追踪会话参与者的加入/离开
  • 带宽管理:动态调整发送速率

一 RTCP包类型(RFC3550定义)

类型名称用途
200SR(Sender Report)发送者报告,包含发送统计和时间戳
201RR(Receiver Report)接收者报告,包含接收统计
202SDES(Source Description)源描述,包含 CNAME、NAME 等信息
203BYE离开通知
204APP应用自定义数据

二、RTCP公共头结构

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| RC | PT=SR=200 | length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
字段位说明
V(Version)0-1版本号,固定为 2
P(Padding)2是否有填充(用于加密对齐)
RC(Report Count)3-7报告块数量(SR/RR)或子类型(APP)
PT(Payload Type)8-15包类型(200=SR, 201=RR, 202=SDES, 203=BYE, 204=APP)
length16-31包长度(单位:32位字,不包含头部)

三、RTCP包类型详解

3.1 SR(Sender Report)- 发送者报告 PT=200

SR 由主动发送 RTP 数据的端点发送,包含发送统计和 NTP/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| RC | PT=SR=200 | length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC of sender | +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ | NTP timestamp, most significant word | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | NTP timestamp, least significant word | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RTP timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | sender's packet count | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | sender's octet count | +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ | report block 1 (if RC > 0) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | report block 2 (if RC > 1) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | . | | . |
字段长度说明
SSRC of sendern发送端媒体流 SSRC
NTP Timestamp MSW32位NTP 时间戳高32位(1900年起的秒数)。绝对墙上时钟(国际标准时间)
NTP Timestamp LSW32位NTP 时间戳低32位(秒的小数部分),核心作用:和下方 RTP 时间戳做映射,接收端计算音视频同步偏移。
RTP Timestamp32位与 NTP 时间对应的 RTP 时间戳,发送该 SR 包瞬间对应的媒体流 RTP 时间戳; 结合 NTP,把相对媒体时间戳换算成真实绝对时间,实现唇同步。
Packet Count32位发送的 RTP 包总数 ,发送至今总 RTP 包数量
Octet Count32位发送的字节总数,发送至今总媒体字节数(不含 RTP 头)

3.2 RR(Receiver Report)- 接收者报告 PT=201

RR 由接收端发送,报告对各发送源的接收统计。

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| RC | PT=RR=201 | length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC of sender | +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ | report block 1 (if RC > 0) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | . | | . |

报告块结构(每个 24 字节):

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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC_1 (source being reported) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | fraction lost | cumulative number of packets lost | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | extended highest sequence number received | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | interarrival jitter | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LSR (last SR) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DLSR (delay since last SR) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
字段长度说明
SSRC_n32位被报告源的 SSRC
Fraction Lost8位最近报告周期内的丢包率(0-255),对应 0~100%
Cumulative Lost24位累计丢包数(有符号)
Extended Highest Seq32位最高扩展序列号,收到的最大序列号(扩展 32 位,解决 16 位循环溢出)
Jitter32位抖动值(RTP时间戳单位),网络抖动,单位媒体时钟 tick
LSR32位上次收到的 SR 时间戳
DLSR32位自上次 SR 以来的延迟,收到远端 SR 到当前发送 RR 的间隔,单位 1/65536 秒; 接收端用 LSR+DLSR 计算往返时延 RTT

3.3 SDES(Source Description)- 源描述PT=202

SDES 包含参与者的文本描述信息。

SDES通用4字节头 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Item Type | Length | 文本内容... | 0(结束标记) +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 所处位置 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| SC | PT=SDES=202 | length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC/CSRC_1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SDES items | | . | | . | | SSRC/CSRC_2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SDES items | | . |

SDES 项类型:

类型名称用途
0END项列表结束标记
1CNAME规范名称(强制)
2NAME用户名称
3EMAIL电子邮件
4PHONE电话号码
5LOC地理位置
6TOOL工具名称
7NOTE备注
8PRIV私有扩展

3.4 BYE-离开通知 PT=203

BYE 用于通知其他参与者某源将离开会话。

通用 4 字节头 +N 个 SSRC(每个 4 字节,RC 个) 可选:退出原因文本(1 字节长度 + 字符串)

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| SC | PT=BYE=203 | length | 通用4字节 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC/CSRC_1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC/CSRC_2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | . | | . | | (optional) length of reason | reason for leaving... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

3.5 APP-自定义扩展块PT=204

厂商私有扩展,用于传输自定义 QoS、硬件状态、业务信令 结构: 通用 4 字节头 32bit 应用标识(4 个 ASCII 字符) 剩余:自定义二进制数据

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| subtype | PT=APP=204 | length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC/CSRC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | name (4 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | application-dependent data | | . |

name: 头

applicantion-dependent data: 扩展数据内容

四、RTCP复合包

RTCP 支持复合包(Compound Packet),即多个 RTCP 子包组合在一个 UDP 包中:

SR 子包 | RR 子包 | SDES 子包 | BYE 子包 | APP 子包

复合包规则:

  1. 第一个子包必须是 SR 或 RR
  2. SDES 必须包含且仅包含一个 CNAME 项
  3. BYE 应放在复合包末尾

相关新闻

  • Moodle完全指南:如何用3步创建您的第一个在线课程?
  • 【免费下载】 JHenTai 漫画阅读器开源项目教程
  • 开源Unity替代引擎Prowl:从痛点分析到完整解决方案

最新新闻

  • CodeForces-Bench:面向真实开发的AI编码能力评测新基准
  • YOLO26改进实战:DGBM模块提升目标检测性能
  • 学生党AI工具选型指南:GPT会员与Grok的算力性价比实战对比
  • 中国主要农作物栅格数据解析与应用指南
  • 基于深度学习的卫星遥感图像分类系统实现
  • LV3296与PIC18F45K42的硬件协同与嵌入式系统设计

日新闻

  • STM32F745VG与MC6470 IMU的高性能姿态控制系统设计
  • 机器不消费,人何以生存
  • AI项目操作手册编写规范与最佳实践

周新闻

  • Windows字体自定义终极方案:No!! MeiryoUI完全指南
  • Deepin Boot Maker:告别命令行,3分钟制作Linux启动盘的智能解决方案
  • Plain Craft Launcher 2:重新定义你的Minecraft游戏体验

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号