4. 音视频编解码基础
投屏链路本质上是“采集—编码—封装—传输—解码—渲染”的流水线。手机端把屏幕画面和系统声音压缩成码流,车机端再解压还原。编解码标准决定了这条流水线的带宽占用、延迟、画质和兼容性。选错编码,轻则画面糊、声音断,重则车机直接黑屏无法播放。因此理解主流编解码标准的特性与权衡,是投屏工程的基本功。
一、核心原理:为什么投屏必须压缩
手机屏幕以 1080p、60fps 计算,原始 RGB 数据量约为 1920×1080×3×60 ≈ 373 MB/s,远超 Wi-Fi 或 USB 的实际可用带宽。编码器通过三种手段压缩:
- 空间冗余压缩:同一帧内相邻像素高度相似,用帧内预测加变换编码去除。
- 时间冗余压缩:相邻帧内容变化很小,只传运动矢量与残差,即帧间预测。
- 熵编码:对残差系数做 CABAC 或算术编码,进一步逼近信息熵下限。
视频编码标准规定的是“码流语法与解码过程”,编码器实现可以自由优化。因此同一标准下,不同芯片的编码质量、延迟和功耗差异很大。音频编码则利用人耳掩蔽效应,丢弃听不见的频率成分,AAC 与 Opus 都属于感知编码。
二、主流标准对比与选型依据
视频侧,H.264(AVC)兼容性最好,几乎所有车机 SoC 都支持硬解;H.265(HEVC)同画质下码率约省 40%,但专利授权复杂,部分车机不支持;AV1 压缩效率更高且免专利费,但硬解覆盖率低,软解功耗大。音频侧,AAC 是投屏音频的事实标准,Opus 在低延迟和低码率下表现更优,适合实时语音与游戏投屏。
| 标准 | 类型 | 相对码率 | 典型延迟 | 车机兼容性 | 投屏适用场景 |
|---|---|---|---|---|---|
| H.264 | 视频 | 基准 1.0 | 低 | 极好 | 通用投屏、导航镜像 |
| H.265 | 视频 | 约 0.6 | 中 | 较好 | 高分辨率、带宽受限 |
| AV1 | 视频 | 约 0.5 | 高 | 较差 | 新平台、点播式投屏 |
| AAC | 音频 | — | 低 | 极好 | 音乐、视频伴音 |
| Opus | 音频 | — | 极低 | 中等 | 游戏、实时语音投屏 |
选型流程可归纳为四步:先探测车机解码能力,再确定分辨率与帧率目标,然后按可用带宽选择编码档位,最后用实测延迟与画质做回归验证。
# 典型投屏编码参数(H.264 基线档,兼容优先)
codec: h264
profile: baseline
level: 4.1
resolution: 1280x720
fps: 30
bitrate: 4 Mbps
gop: 30
rate_control: CBR
audio: aac-lc 128 kbps 48 kHz stereo
三、场景化选型案例
导航镜像场景:画面以静态地图和文字为主,运动少,H.264 720p@30 即可,码率 3~4 Mbps,优先保证兼容与低延迟。
视频投屏场景:播放 1080p 电影,画质优先,若车机支持 H.265,可用 1080p@30、6 Mbps,画质接近 H.264 的 10 Mbps,节省 Wi-Fi 带宽。
游戏投屏场景:帧率高、运动剧烈,延迟敏感。视频用 H.264 低延迟档,音频用 Opus 48 kHz、20 ms 帧长,端到端延迟可压到 80 ms 以内。
四、常见误区与复盘
- 误区一:码率越高画质越好。 超过编码器与带宽的合理区间后,画质提升有限,反而增加延迟和丢包风险。
- 误区二:只看编码标准,不看 profile/level。 同为 H.264,High profile 车机可能不支持,必须回退到 Baseline 或 Main。
- 误区三:忽略音频与视频的同步。 AAC 帧长 1024 样本,Opus 支持 2.5~60 ms,帧长不一致会导致音画不同步,需用时间戳对齐。
- 误区四:忽视解码功耗。 AV1 软解在车机上可能占满 CPU,导致卡顿发热,硬解不支持时应果断降级。
复盘时建议记录每次投屏协商的 codec、profile、分辨率、码率、实测延迟与卡顿次数,形成兼容性矩阵。长期看,H.264 + AAC 仍是投屏的“最大公约数”,H.265 与 Opus 是带宽和延迟优化项,AV1 则等待车机硬解普及后再纳入默认候选。
掌握上述标准特性与权衡逻辑后,面对具体车型和投屏协议时,就能快速给出可落地的编码参数组合,而不是盲目追求新标准或高码率。