小红书技术REDtech

【世界杯专题01】体育直播全链路降延迟实践

Image

世界杯期间,小红书不仅是用户分享讨论赛事的社区,还承接着高并发直播、互动玩法与多端观看体验的技术考验。

为了让每一次进球、欢呼和关键瞬间更稳定地抵达用户,我们做了一系列的工程攻坚。

REDtech 推出「世界杯专题」,将从这些真实的一线实践出发,拆解小红书的技术如何支撑起一场全民赛事。第一篇,我们从直播低延迟讲起。

导读

体育赛事的临场感,离不开观众与比赛节奏同步的紧张和欢呼。低延迟直播让进球等关键画面更及时地抵达观众。实现低延迟的难点,是在从全链路每个环节、多终端协同中平衡整体播放体验:缩小缓存会削弱抗抖动能力,编码转码又需要在计算开销、画质和时延之间取舍。本文结合大型赛事保障实践,介绍如何以统一测量为基础,协同优化媒体传输、编码转码和终端播放,在多重约束下改善观赛体验降低赛事直播延迟。

01

一帧画面,要经过多少环节

隔壁已经响起欢呼,手机里的球却还在中场。体育直播的几秒差距,决定用户是在画面中看到进球,还是先从消息推送里知道结果。

赛事直播完整链路跨越信号接入与安全审核、解码与主备矩阵、演播制作、编码转码、CDN 分发、用户网络和终端渲染。帧同步、播放缓存等每个环节各有用途,每个环节的延迟都会累计到总延迟里。

Image

图 1:赛事直播全链路简图

单独缩小缓存、加快追帧会削弱抗抖动能力;提高码率会增加带宽负担。我们在同等信号接入、安全播出要求和可接受画质下允许质量边界内的卡顿,通过综合的动态调节能力在延迟、卡顿、码率三角中获取整体体验的平衡。

Image

图 2:给定编码、资源和网络条件下的参数取舍;消除无效等待仍可能同时改善多项指标。

02

HTTP-FLV 与 RTC 延迟机制有什么不同

HTTP-FLV 建立在可靠、有序的 TCP 字节流上。丢失字节补齐前,后续数据即使已经到达,也无法交给媒体层继续处理。RTC 携带包序号、媒体时间戳和帧边界,可以结合往返时延 RTT 与播放时间戳,在重传、冗余恢复、请求关键帧和放弃过期包之间选择。

Image

图 3:典型协议路径,反馈、冗余和重传按实现启用。

一次丢包在 HTTP-FLV 链路上可能依次形成 TCP 重传等待、队头阻塞、Demux/解码数据断档,播放器再增加 Buffer 抵御后续抖动。RTC 可按策略选择 NACK 重传请求、FEC 冗余恢复或 PLI 关键帧请求,结合拥塞控制与 Jitter Buffer,尽量把恢复限制在数据仍有播放价值的窗口内。决定时延差异的是这些流媒体语意结合传输决策。

Image

图 4:丢包恢复机制。序号为示意;TCP 恢复连续字节,RTC 结合播放时限决定恢复或接受局部损伤。

首帧和延迟需要分开看:首帧指从发起播放到第一帧画面上屏的耗时;延迟指同一帧画面从直播源的测量点到终端上屏的耗时。HTTP-FLV 的首帧受 TCP 建连与拥塞窗口建立、关键帧或边缘 GOP Cache 获取、启播缓存水位等因素影响;播放中的延迟还会随网络抖动、重传等待和缓存水位变化。RTC 同样需要会话建立、安全握手、关键帧和抖动缓冲,并通过高频反馈、Pacer 与按播放截止时间恢复控制延迟。

Image

图 5:各框展示等待来源,框内时长为机制示意;箭头下方为优化后的平均延迟,不代表 SLA。首帧和延迟分别测量,不能直接相加。

这也带来取舍:RTC 需要持续反馈和会话状态,对资源容量、终端兼容与降级体系要求更高;HTTP-FLV 复用成熟 CDN,覆盖与运维成本更可控。我们让网络、机型更适合的用户走 RTC 低延迟, HTTP-FLV 作为主链路,两条链路从原理 x 重要环节并行优化。

03

通过 SEI 用 NTP 时间戳测量每段延迟

PTS 描述媒体时间线,并不天然对应跨设备的绝对时间。我们用 NTP 统一可控设备的系统时钟,在演播厅、导播台输出编码链路中通过 SEI 为视频帧注入时间锚点,让时间信息随帧经过转码、分发和播放。两者让延迟可测,本身不降低延迟。

Image

图 6:统一测量框架,编号为观测点标识;测量需同帧识别与时钟对齐或偏差校正,各端按实际能力接入。

基于演播输出、源站进出、CDN 接入、播放器缓存和终端上屏等锚点,我们设置分段预算:演播输出至上屏不超过 3s,源站转码含可能启用的增强处理不超过 800ms,音画同步误差控制在 ±150ms 以内。这些预算作为调参、告警和扩容的约束,并由全量端侧体验指标持续验证。

编码、转码 Pipeline 延迟看板与四端 QoS 监控相互补充,核心指标进入实时大盘和告警,诊断指标用于下钻,定位时间具体花在哪一段。

04

从编码到端侧 Buffer,逐段做取舍

演播厅联调时,专业编码设备输入到输出一度超过 1.2s。通过深入分析发现主要原因是 rc-lookahead 默认配置较大及编码单元划分过深导致复杂画面计算耗时增加、队列积压,GOP 设置并非主要瓶颈。通过优化编码复杂度配置,同一帧的编码 Pipeline 延迟降至 400ms 以内。平均码率和 GOP 保持不变,主观评测确认画质持平。

云端转码是去隔行、超分、插帧等 GPU 算子串联的自研转码 Pipeline。我们通过异步算子与编码器缓冲调整提升处理帧率,预留速度冗余,避免输入抖动后队列持续积压。高性能算力优先调度、组件预热和非必要模块懒初始化,主要缩短冷启动与故障恢复。

端侧结合带宽、网络类型、码率与带宽比,在延迟优先、均衡、流畅兜底策略间切换,联动控制启播选点、启播水位、最大缓存与追帧倍速、卡顿恢复水位。单变量实验中,下调启播参数或最大缓存都会增加卡顿,后者的延迟收益和卡顿代价更大,因此需要多参数联合调节。RTC 按地区、机型和版本灰度,评估延迟、首帧、卡顿与崩溃指标及补充异常自动回退机制。

05

赛中持续校准效果与质量

我们把完整对比录像、实时 QoS、单房间诊断和用户反馈放在一起,按端别、网络、码率、协议与 CDN 分群,调节转码策略、RTC 覆盖和播放参数,通过实际数据、用户反馈、赛事热度、资源容量等决策是否执行分级预案。

Image

图 7:赛中全程对比监控,准备不同分级预案。

赛事初期,对比录像暴露了上游信号的等待差异,与信号提供方协同校准分发节点后,差距很快收窄,剩余问题再沿自身链路排查。直接比较终端画面,容易把上游固定差距误判为后续环节问题。

策略也要接受体感检验:赛事的场景需要降低追帧倍速,偏移较大时收紧高倍速上限,用稍长的追赶时间减少快进倍率、爆音或音画异常。指标触及保护线时,停止扩大、缩小圈选,回退协议或链路。

经同步录制交叉验证,在信号接入条件相近的多数重点场次中,我们在成功率、卡顿率保持高位的同时相对同类平台领先约1—3 秒。

///

团队介绍

小红书多媒体技术团队:

我们是小红书多媒体技术部,一支深耕多媒体算法与工程的技术团队,业务覆盖点播(追求「零首帧、高画质、无卡顿」的沉浸观看)、直播(从超低延迟连麦到大型赛事保障)、实时音视频 RTC(攻克弱网对抗与音质优化的前沿阵地)以及图片(从极致压缩到语义级增强,让每张图片成为可被理解、可交互的视觉资产),是公司海量图片、点播、直播与实时音视频业务背后的核心引擎力量。

看完这场硬仗,如果你也想亲手参与下一场--就赶紧加入我们吧!

无论你是27届毕业的校招生,还是已经在一线摸爬滚打的技术人,我们正在招 AI全栈/PE 工程师,等的就是这样的你,加入我们,你会获得:

  • 核心业务阵地—— 你写的每一行代码,直接影响亿万用户的日常体验

  • 完整的系统级视野—— 从算法到网络、从端到云、从传统信号处理到 AI 生成,全链路一站式练满

  • ⚡ AI 加持下的角色重构—— 一个人端到端拉通前后端 / 客户端 / 测试 / 部署,全栈 / PE 工程师最好的练兵场

  • AI-Native 的工作方式—— 不纠结“用不用 AI”,只琢磨“如何让 AI 深度重构工作方式”

投递方式:

扫描二维码一键投递,也可联系小红书同学获取内推码,网申时填写即可获得简历优先筛选特权。

校招简历投递

Image

社招简历投递

Image
Image