音视频技术全景与学习路线笔记
适合目标:系统建立音视频技术整体认知,理解直播、回放、WebRTC、编解码、会议系统之间的关系,并形成后续深入学习路线。
学习定位:这一份偏“总览、分层、选型、路线”。
学习原则:先理解系统分层,再理解具体协议和产品形态;先分清直播、连麦、回放和会议系统,再进入编解码与传输细节。
目录
- 音视频技术到底在学什么
- 音视频系统的核心分层
- 直播、低延迟直播、会议系统、回放的区别
- 音视频常见系统全景图
- 编解码、封装、传输协议之间的关系
- 学习路线建议
- 高频面试题
- 一页总结
1. 音视频技术到底在学什么
音视频技术本质上是在解决:
- 如何采集音频和视频
- 如何压缩成适合传输的数据
- 如何在网络中稳定传输
- 如何在终端解码、播放和渲染
- 如何在不同业务场景下平衡延迟、画质、成本和并发
一句话理解:
音视频技术 = 采集 + 处理 + 编码 + 封装 + 传输 + 解码 + 渲染 + 系统架构
2. 音视频系统的核心分层
2.1 客户端层
- 摄像头/麦克风采集
- 音视频前处理
- 编码
- 播放与渲染
- 用户交互
2.2 传输层
- RTP / RTCP
- RTMP
- HLS / DASH
- WebRTC
- QUIC / WebTransport 等新方向
2.3 服务端层
- 信令服务
- 流媒体接入服务
- 转码服务
- 分发服务
- 录制与回放服务
2.4 存储与分发层
- 对象存储
- CDN
- 时移与录制文件
3. 直播、低延迟直播、会议系统、回放的区别
3.1 普通延迟直播
特点:
- 并发高
- 成本更优
- 延迟通常秒级到十几秒
- 更偏“一对多”观看
3.2 低延迟 / 近实时直播
特点:
- 延迟比传统直播更低
- 更适合互动场景
- 系统复杂度更高
3.3 WebRTC 低延迟 / 无延迟直播
严格说没有真正“物理意义上的零延迟”,工程上通常指:
亚秒级到 1 秒以内的超低延迟互动直播
3.4 会议系统
特点:
- 多人双向互动
- 更强调实时性
- 音频优先级极高
- 常用 SFU
3.5 回放系统
特点:
- 不再强调极低延迟
- 更强调稳定、拖拽、倍速、清晰度切换
- 更依赖存储、索引和切片管理
4. 音视频常见系统全景图
+----------------------+
| 音视频产品形态 |
+----------------------+
|
+--------------------------+---------------------------+
| | |
v v v
+-----------+ +----------------+ +----------------+
| 直播系统 | | 会议/连麦系统 | | 回放/点播系统 |
+-----------+ +----------------+ +----------------+
| | |
v v v
RTMP/HLS/FLV WebRTC/SFU/信令 HLS/MP4/DASH
| | |
+--------------------------+---------------------------+
|
v
编解码 / 封装 / 传输
|
v
采集 / 前处理 / 渲染
5. 编解码、封装、传输协议之间的关系
这是音视频学习里最容易混淆的一块。
5.1 编解码
解决:
- 如何压缩音视频数据
- 如何还原音视频数据
例如:
- H.264
- H.265
- VP8 / VP9
- AV1
- Opus
- AAC
5.2 封装格式
解决:
- 音视频数据怎么组织成文件或流
例如:
- MP4
- FLV
- TS
- MKV
5.3 传输协议
解决:
- 数据怎么从一端发到另一端
例如:
- RTMP
- RTP
- HLS
- DASH
- WebRTC
5.4 一句话区分
编码:怎么压缩封装:怎么装起来传输:怎么送过去
6. 学习路线建议
6.1 第一阶段:先建立全景认知
先理解:
- 直播和会议的区别
- 编码、封装、传输的区别
- CDN、SFU、信令分别干什么
6.2 第二阶段:学直播主线
- 普通延迟直播
- HLS / FLV / RTMP
- CDN 分发
6.3 第三阶段:学低延迟互动主线
- WebRTC
- 信令
- ICE / SDP
- SFU
6.4 第四阶段:学编解码
- 视频编码基础
- 音频编码基础
- 软硬编解码
6.5 第五阶段:学会议系统架构
- 房间模型
- 多人互动
- 屏幕共享
- 弱网对抗
7. 高频面试题
7.1 直播和 WebRTC 会议的核心区别是什么
- 直播更偏一对多
- WebRTC 会议更偏多人实时互动
- 直播更能接受秒级延迟
- 会议系统更强调亚秒级实时性
7.2 编码、封装、协议分别是什么
- 编码解决压缩
- 封装解决数据组织
- 协议解决传输
7.3 为什么会议系统通常比普通直播更复杂
因为它需要解决:
- 双向音视频
- 成员同步
- 屏幕共享
- 弱网对抗
- 多人流管理
8. 一页总结
8.1 学音视频的主线
先学直播,再学 WebRTC,再学编解码,再学会议系统架构。
8.2 记忆口诀
采集、压缩、封装、传输、解码、渲染;直播看分发,会议看实时,回放看存储和索引。