文章目录

普通延迟直播系统学习笔记

适合目标:系统掌握传统直播系统的整体架构、推流拉流链路、CDN 分发、延迟来源和常见面试题。
学习定位:这一份偏“传统直播、秒级延迟、一对多分发”。
学习原则:先理解直播链路,再理解延迟来源和 CDN 架构。


目录

  1. 普通直播是什么
  2. 直播系统总体架构
  3. 推流、转码、分发、播放链路
  4. 常见协议
  5. 为什么会有延迟
  6. CDN 在直播里的作用
  7. 延迟、成本、并发的取舍
  8. 高频面试题
  9. 一页总结

1. 普通直播是什么

普通延迟直播通常指:

以大规模一对多观看为主,可以接受秒级甚至十几秒延迟的直播系统。

常见场景:

  1. 秀场直播
  2. 电商直播
  3. 体育转播
  4. 教育大班课

2. 直播系统总体架构

主播端采集
  -> 编码
  -> 推流到接入服务
  -> 可选转码
  -> 分发到 CDN
  -> 用户端拉流播放

3. 推流、转码、分发、播放链路

3.1 推流端

负责:

  1. 摄像头/麦克风采集
  2. 音视频编码
  3. 推流到服务端

3.2 接入服务

负责:

  1. 接收主播流
  2. 验证推流权限
  3. 转发到转码或分发模块

3.3 转码服务

负责:

  1. 多码率生成
  2. 多分辨率转码
  3. 不同终端适配

3.4 CDN 分发

负责:

  1. 大规模缓存和边缘分发
  2. 提高可扩展性
  3. 降低源站压力

3.5 播放端

负责:

  1. 拉流
  2. 解封装
  3. 解码
  4. 渲染和播放

4. 常见协议

4.1 RTMP

常见于:

  1. 推流
  2. 部分拉流场景

4.2 HLS

特点:

  1. 兼容性好
  2. 易于 CDN 分发
  3. 延迟通常较高

4.3 HTTP-FLV

特点:

  1. 延迟通常低于 HLS
  2. 播放链路较直接

5. 为什么会有延迟

直播延迟主要来自:

  1. 采集缓冲
  2. 编码缓冲
  3. 推流传输
  4. 服务端转码与分发
  5. CDN 缓存
  6. 播放端缓冲

一句话:

普通直播为了抗抖动、抗弱网和支持大规模分发,通常会主动引入一定缓冲,所以延迟更高。


6. CDN 在直播里的作用

  1. 提供边缘缓存
  2. 提供大规模分发能力
  3. 降低源站压力
  4. 提高跨地域访问质量

7. 延迟、成本、并发的取舍

普通直播通常优先:

  1. 并发能力
  2. 成本控制
  3. 播放稳定性

而不会把“极低延迟”放第一位。


8. 高频面试题

8.1 普通直播系统链路是什么

主播采集编码后推流到服务端,服务端接入和转码,再通过 CDN 分发到观众端,观众端再拉流解码播放。

8.2 为什么普通直播延迟高

因为链路中有多层缓冲、切片、转码和 CDN 缓存,这是为了稳定性和大规模分发能力。

8.3 HLS 和 FLV 有什么区别

HLS 更适合大规模稳定分发,但延迟更高;HTTP-FLV 延迟通常更低。


9. 一页总结

9.1 普通直播关键词

推流、转码、CDN、拉流、秒级延迟、大规模分发。

9.2 记忆口诀

普通直播看分发,延迟换稳定,并发靠 CDN。