# VOD 深度解析 第 3 部分：音频基础 —— 让声音变小

> 深入理解数字音频的工作原理：采样率、位深、声道、AAC 对比 Opus 对比 Dolby Atmos、多语言音轨、响度归一化，以及实用的 ffmpeg 配方。

- 作者: zhuermu
- 发布: 2026-05-10
- 网页版: https://zhuermu.com/blog/vod-deep-dive-part-3-audio-fundamentals/

---
> *这是 [VOD 流媒体深度解析](/blog/vod-deep-dive-part-1-video-fundamentals/) 系列的第 3 部分。*

---

## 声音如何变成数字

声音是空气的振动 —— 一段连续的波形。计算机只能存储数字，无法存储连续的波。因此需要两个步骤：

1. **采样（Sampling）**：以固定间隔测量波形的高度
2. **量化（Quantization）**：把每次测量结果转换成一个数字

```
Amplitude
 ▲
 │  ●   ●                     ●    Sample points
 │     ●  ●  ●
 │           ●  ●
 │              ●  ●   ●
 └──────────────────────► Time
     ↑ ↑ ↑ Sample N times per second — N is the "sample rate"
```

---

## 采样率

**单位**：Hz（赫兹 —— 每秒采样次数）

| 采样率 | 使用场景 |
|------------|----------|
| 8 kHz | 电话语音 |
| 16 kHz | 语音识别、VoIP（Zoom/Teams） |
| 22.05 kHz | 复古游戏、AM 广播 |
| **44.1 kHz** | **CD 音频，音乐首选** |
| **48 kHz** | **视频行业默认值**（电影、流媒体、广播） |
| 96 kHz | Hi-fi 录音 |
| 192 kHz | 专业录音棚 |

**奈奎斯特定理（Nyquist theorem）**：要还原频率 F，采样率至少需要达到 2F。人耳听力上限大约为 20 kHz，因此 44.1/48 kHz 刚好够用（并留有少量余量）。

对于 VOD，统一采用 **48 kHz**。如果你的源素材是 44.1 kHz，请在转码时用 `-ar 48000` 进行重采样。

---

## 位深

每个采样使用多少比特：

| 位深 | 响度级数 | 使用场景 |
|-----------|----------------|----------|
| 8-bit | 256 | 复古游戏、电话 |
| **16-bit** | **65,536** | **CD、消费级流媒体** |
| 24-bit | ~16.7M | 专业录音 |
| 32-bit float | 天文数字级 | 音频制作的内部格式 |

大多数视频音频为 16-bit、48 kHz。

---

## 声道

一个**声道（channel）**就是一条独立的音轨：

| 声道 | 名称 | 配置 | 应用于 |
|----------|------|---------------|---------|
| 1.0 | 单声道（Mono） | 单个声道 | 电话、老式电视 |
| 2.0 | 立体声（Stereo） | 左 + 右 | **音乐、多数视频** |
| 5.1 | 环绕声 | 前左 + 中置 + 前右 + 后左 + 后右 + **LFE**（.1 = 低音炮） | 影院、家庭影院 |
| 7.1 | 环绕声 | 5.1 + 两个侧向声道 | 高端家庭影院 |
| 7.1.4 | Atmos 等 | 7.1 + **4 个顶置声道** | Dolby Atmos |

```
5.1 surround layout (top-down view):

         FL ──── C ──── FR
              │  🧑  │
              │      │
         SL ──┻━━━━──SR
                LFE
```

---

## 音频码率：多少 kbps 才够？

音频码率同样是以每秒比特数计量的，但比视频小得多 —— 通常只有**视频码率的 5–10%**。

| 码率 | 主观感受 | 典型用途 |
|---------|-----------|------------|
| 32 kbps | 语音可用，音乐失真 | 极低带宽 |
| 64 kbps | 语音清晰，音乐勉强 | 低码率场景 |
| 96 kbps | 音乐可接受 | 广播、YouTube 默认 |
| **128 kbps** | **音乐听感良好** | **流媒体默认值** |
| 192 kbps | 高保真 | 高端音乐流媒体 |
| 256 kbps | 发烧级 | Apple Music |
| 320 kbps | MP3 上限 | 音乐爱好者 |
| 无损（FLAC） | 透明无损 | Hi-fi 小众 |

对于 VOD 而言：**128 kbps 的立体声 AAC** 在绝大多数场景下都是正确答案。

---

## 主流音频编解码器

### AAC（Advanced Audio Coding）—— 流媒体默认之选

- **出品方**：MPEG（与 H.264 出自同一组织）
- **年份**：1997
- **兼容性**：**所有**视频平台、浏览器和手机
- **变种**：
  - **AAC-LC**（Low Complexity）：最常见。HLS/DASH 默认。
  - **HE-AAC**（High Efficiency）：在低码率（&lt;64 kbps）下表现更好
  - **HE-AAC v2**：HE-AAC + 参数化立体声，在 48 kbps 下效果尚可

### MP3 —— 已退役

经典之作，但效率不及 AAC。原始专利已于 2017 年到期。新项目没有理由再使用 MP3。

### Opus —— Web 新秀

- **开源、免版税**
- 从 6 kbps（语音）到 510 kbps（音乐）均表现优异
- **WebRTC 默认编解码器**，Discord 也在使用
- 但其 HLS/DASH 兼容性落后于 AAC；iOS/Safari 支持有限

### Dolby 家族 —— 影院级

| 编解码器 | 使用场景 |
|-------|----------|
| AC-3（Dolby Digital） | 5.1 环绕声、蓝光、传统高清电视 |
| E-AC-3 / DD+（Dolby Digital Plus） | 5.1/7.1、流媒体电影 |
| **Dolby Atmos**（E-AC-3 + JOC 或 AC-4） | **空间音频**、高端平台 |

Netflix、Disney+ 和 Apple TV+ 上的 Dolby Atmos 是高端订阅的标志。

### FLAC / ALAC —— 无损

无损压缩可将体积减小 50–70%，同时完美保留原始 PCM 数据。用于 Apple Music 无损档位和发烧场景。不适合视频流媒体 —— 码率太高。

---

## 多语言音轨

单个视频文件可以携带**多条音轨**：

```
MP4 file
├── video track   (H.264)
├── audio track 1 (AAC, English)
├── audio track 2 (AAC, Chinese)
├── audio track 3 (AAC, Japanese)
└── subtitle track (WebVTT)
```

流媒体协议（HLS/DASH）支持**独立音轨投送** —— 播放器只会下载用户选定的语言：

```m3u8
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio",LANGUAGE="en",NAME="English",DEFAULT=YES,URI="audio/en/index.m3u8"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio",LANGUAGE="zh",NAME="中文",URI="audio/zh/index.m3u8"
```

关于这部分内容，[第 5 部分：流媒体协议](/blog/vod-deep-dive-part-5-streaming-protocols-hls-dash/) 中会有更多讲解。

---

## 响度归一化

有没有注意过，广告插进来时音量会突然飙升？那是因为不同内容的响度水平相差悬殊。

**响度归一化（Loudness normalization）**会把所有内容调整到统一的*主观感知*响度（而非峰值音量）。

### 常见标准

| 标准 | 目标响度 | 使用方 |
|----------|----------------|---------|
| **EBU R128** | -23 **LUFS** | 欧洲广播 |
| **ATSC A/85** | -24 LUFS | 北美广播 |
| **Apple Music / Spotify** | -14 LUFS | 音乐流媒体 |
| **YouTube** | -14 LUFS | 默认 |
| **短视频 / 移动端** | -16 至 -14 LUFS | 手机扬声器范围 |

**LUFS**（Loudness Units Full Scale，满量程响度单位）是衡量主观感知响度的国际标准。

### ffmpeg 响度归一化

```bash
# Normalize audio to -14 LUFS
ffmpeg -i input.mp4 -af loudnorm=I=-14:TP=-1.5:LRA=11 -c:v copy output.mp4
```

---

## 动手实践：检查与转码音频

### 查看视频中的音轨

```bash
ffprobe -v error -show_streams -select_streams a input.mp4
```

典型输出：

```
codec_name=aac
sample_rate=48000
channels=2
channel_layout=stereo
bit_rate=128000
```

### 统一为 AAC 48 kHz 128 kbps 立体声

```bash
ffmpeg -i input.mov \
  -c:a aac -b:a 128k -ar 48000 -ac 2 \
  -c:v copy \
  output.mp4
```

- `-c:a aac`：音频编解码器 AAC
- `-b:a 128k`：128 kbps 码率
- `-ar 48000`：48 kHz 采样率
- `-ac 2`：2 声道（立体声）
- `-c:v copy`：原样复制视频流（省时）

---

## 关键要点

1. 数字音频需要**采样率**（时间密度）和**位深**（幅度精度）。
2. VOD 默认值：**48 kHz** 采样率、**16-bit** 位深。
3. 消费级流媒体默认使用**立体声（2.0）**；影院使用 **5.1 / Atmos**。
4. **128 kbps 的 AAC-LC** 是 VOD 的默认音频设置。
5. 单个视频文件可以携带多条音轨（多语言）。
6. **响度归一化**（EBU R128 / -14 LUFS）可以解决“广告太吵”的问题。

---

*上一篇：* [第 2 部分：视频编解码器](/blog/vod-deep-dive-part-2-video-codecs-h264-h265-av1/)

*下一篇：* **[第 4 部分：容器格式 —— MP4、fMP4 与 CMAF](/blog/vod-deep-dive-part-4-container-formats-mp4-fmp4-cmaf/)**

---

## 常见问题

### 流媒体视频的音频码率设多少合适？

绝大多数 VOD 场景的正确答案是：立体声 AAC、128 kbps——这个码率下音乐听感已经良好，也是流媒体的默认设置。音频通常只占视频码率的 5–10%。只有在带宽极其紧张时才降到 64–96 kbps；而 192–256 kbps 以上的高码率主要用于高端音乐流媒体，对视频来说意义不大。

### 采样率 44.1 kHz 和 48 kHz 有什么区别？

44.1 kHz 是 CD 音频标准，音乐领域首选；48 kHz 则是视频行业（电影、流媒体、广播）的默认值。根据奈奎斯特定理，采样率至少要达到目标频率的两倍才能还原，人耳上限约 20 kHz，所以两者都够用。做 VOD 建议统一到 48 kHz，如果源素材是 44.1 kHz，转码时用 -ar 48000 重采样即可。

### 什么是响度归一化？为什么广告声音总是特别大？

不同内容的响度水平相差悬殊，所以广告一插进来音量就会突然飙升。响度归一化就是把所有内容调整到统一的主观感知响度（以 LUFS 为单位），而不是简单对齐峰值音量。常见标准：欧洲广播 EBU R128 为 -23 LUFS，YouTube 和音乐流媒体为 -14 LUFS。用 ffmpeg 的 loudnorm 滤镜即可完成。


---

## 参考资料

- [RFC 6716: Definition of the Opus Audio Codec](https://datatracker.ietf.org/doc/html/rfc6716) — IETF
- [FFmpeg documentation](https://ffmpeg.org/documentation.html) — FFmpeg
