摘要
- RFC 9584 用单 NAL 包、聚合包和分片单元承载 EVC。它能为解码器准备有序输入,却不宣称解码器一定产出画面。
- 序号、M 位、时间戳、DON、PLI 与 FIR 都只回答一个有限问题。要声称播放成功,必须另外取得解码、呈现与显示面的回执。
一次直播故障中,网络侧可能拿出近乎完美的曲线:序号连续、带宽充足、访问单元末尾的 M 位存在、90 kHz 时间戳稳定递增。客户端却仍是一块黑屏。两份记录并不冲突。网络记录证明观察点收到了格式正确的 RTP 流;它没有证明参数集齐全、参考帧可用、解码器接受码流,也没有证明生成的帧赶上显示时刻。
RFC 9584 在 2024 年 6 月成为 IETF 标准轨 RFC。它解决的范围很具体:如何把 Essential Video Coding 的 NAL 单元装入 RTP。小的 NAL 可以独占一个包;同一访问单元中的多个 NAL 可以进入聚合包;太大的 NAL 可以拆成多个分片单元。该设计沿用了 H.264、HEVC 和 VVC 载荷格式的成熟思路。沿用说明接口并非凭空发明,不等于任何实现都已经互通。
RTP 头部中的每个字段都应受到语义约束。序号帮助接收方恢复发送顺序,并不保证每个包都送达。监测镜像本身也可能丢包,或者看见一个随后被终端丢弃的包。M 位表示当前 RTP 流中一个访问单元的最后一个包,不为此前所有包的到达背书。时间戳给出采样和显示时序参考,不是准时显示的收据。SSRC 标识来源,在缺少合适安全机制时,也不是可信身份。
分片最能暴露“边界标记不是完整性”的问题。FU 的起始位和结束位标出一个被拆分 NAL 的两端。接收方把连续分片的载荷拼接起来才能重建 NAL。若中间分片丢失,规范通常要求丢弃同一 NAL 后续分片,除非已知解码器能安全处理不完整输入。看见结束位,只说明末片出现;不能让缺失的中段重新存在。
聚合包则把另一种风险集中在一个包内。它至少包含两个、且属于同一访问单元的 NAL,并按解码顺序排列;聚合包不能嵌套,也不能把 FU 装进去。整个 RTP 包校验正确,仍可能含有错误 NAL、缺失的依赖状态,或接收方不支持的工具。包完整是送入解码器的前提,不是解码器的判决。
DONL 与 DOND 用来推导绝对解码顺序 AbsDon。这个值告诉去分包缓冲区应先向解码器交付哪个 NAL。它允许合理的空洞,因为网关可能不转发较高时间层或部分 SEI;相同值也可能容许任一顺序。解码输入顺序与画面输出顺序、显示截止时间和用户可见结果并不是同一事实。
规范还明确区分去分包缓冲与抖动缓冲。前者重建并重排 NAL,后者吸收网络时延变化。设备即使拥有足够的去分包容量,也可能因为抖动预算、解码负载或渲染队列不足而错过呈现。把两个缓冲区合成一个“正常”指示灯,会把两类故障压扁成无法追责的绿色状态。
PLI 和 FIR 也只是恢复链上的动作。PLI 表示一个或多个画面丢失了数量未定义的编码数据;FIR 要求发送端产生 IDR 画面,并在没有带外确认时带上参数集。发出请求不等于发送端执行,IDR 到达不等于解码成功,解码成功也不等于观众已经看到恢复后的画面。
RFC 9584 对边界说得非常直接:载荷格式本身不是完整系统。RTP 不预留资源,也不保证服务质量。保密性、完整性和来源真实性需要应用选择相应的 RTP 安全机制。IANA 登记 video/EVC 与 90 kHz 时钟,只证明代码点协调完成;它不能证明某个产品实现了、协商了或正确运行了该格式。
因此,可信链条必须保留每一个连接:目标终端收到包;来源与完整性验证通过;分片集合齐全;NAL 重建完成;解码顺序确定;参数集、profile 和工具能力匹配;解码器产出画面;画面赶上截止时间;渲染器提交;显示面更新。上游回执可以授权下一步处理,却不能替下游结果签字。
来源
- https://www.rfc-editor.org/rfc/rfc9584.html
- https://www.rfc-editor.org/info/rfc9584
- https://datatracker.ietf.org/doc/rfc9584/
- https://datatracker.ietf.org/doc/draft-ietf-avtcore-rtp-evc/history/
- https://www.rfc-editor.org/errata/rfc9584
- https://www.rfc-editor.org/rfc/rfc3550.html
- https://www.rfc-editor.org/rfc/rfc4585.html
- https://www.rfc-editor.org/rfc/rfc5104.html
- https://www.rfc-editor.org/rfc/rfc8866.html
- https://www.rfc-editor.org/rfc/rfc3711.html
- https://www.rfc-editor.org/rfc/rfc7798.html
- https://www.rfc-editor.org/rfc/rfc9328.html
- https://www.iana.org/assignments/rtp-parameters/rtp-parameters.xhtml
- https://www.iana.org/assignments/media-types/media-types.xhtml
- https://heng.lu/on-reality-layers-symbolic-power-and-why-clarity-feels-so-hostile/
- https://heng.lu/running-code-primary-the-patch-needed-to-preserve-the-internet-original-design/
- https://heng.lu/on-why-btw-media-exists-and-why-reality-not-advocacy-is-the-product/
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance

