1. Codec 基础概念:音视频编解码器到底是个啥?
说实话,我刚入行那会儿,觉得 Codec 这词儿特玄乎。后来干久了才明白——编解码器,说白了就是一套压缩和解压缩的算法。
你拍了一段 4K 视频,原始数据量有多大?我算给你看:1920×1080×30fps×3字节≈ 1.5 Gbps。这还没算音频。没有 Codec,你手机拍 10 秒就得爆存储。所以,Codec 的核心使命就两个:把原始数据变小(编码),用的时候再还原(解码)。
1.1 有损 vs 无损压缩
这里有个关键分水岭——有损压缩和无损压缩。我经常被问到:“老师,为啥视频压缩完画质变差了?”嗯,这得看你选的是哪种。
| 类型 | 原理 | 典型场景 | 我踩过的坑 |
|---|---|---|---|
| 无损压缩 | 去掉冗余信息,解压后完全还原 | 医学影像、专业存档 | 曾经用无损压 4K 视频,码率还是太高,根本传不动 |
| 有损压缩 | 丢弃人眼/人耳不敏感的信息 | 流媒体、短视频、直播 | 有一次码率给太低,画面全是马赛克,被客户骂惨了 |
核心原则:有损压缩的“损”是可控的。你愿意牺牲多少画质,就能换来多少压缩率。这个平衡点,就是咱们这门课要反复调的东西。
1.2 常见 Codec 标准速览
市面上 Codec 多如牛毛,但真正你工作中天天打交道的,就下面这几个。我个人习惯把它们分成两拨:视频派和音频派。
视频 Codec
- H.264(AVC)——老将,兼容性之王。2003 年的标准,到现在还在用。我在做直播项目时,90% 的推流端都只支持 H.264。它用 宏块、帧内/帧间预测、DCT 变换 这些手段压缩。说白了,就是找画面里相似的地方,只存一份。
- H.265(HEVC)——H.264 的接班人。压缩率能再翻一倍。但有个坑:专利授权乱,浏览器支持不统一。我记得有一次给客户做 4K 点播,用 H.265 压完,结果用户用 Safari 看不了……后来乖乖切回 H.264。
音频 Codec
- AAC——目前最主流的音频编码。MP4 的默认音频格式。它的 心理声学模型 很聪明:人耳听不到的频率,直接扔掉。我调 AAC 参数时,最常碰的就是 比特率 和 采样率 的匹配问题。
- Opus——后起之秀,开源免费。延迟极低,音质还特好。做实时通话、在线会议的首选。我最近一个项目里,把 Opus 的码率从 32kbps 调到 64kbps,听感提升非常明显。
我的建议:新手先死磕 H.264 和 AAC。这两个搞明白了,H.265 和 Opus 上手就是分分钟的事。底层原理是相通的。
1.3 核心知识体系:一张图看懂
下面这张图,是我自己梳理的 Codec 基础框架。你把它存脑子里,后面 29 章都不会迷路。
注意:别被这张图的节点数吓到。你只需要记住:定义 → 分类 → 标准 → 参数 → 调试 这条主线。后面的章节,就是沿着这条线往下挖。
1.4 为什么这些概念这么重要?
我见过太多人,上来就调参数,结果调了半天画质还是烂。为什么?因为你不懂底层原理。举个例子:
你给 H.264 设了一个很低的码率,画面开始模糊。这时候你该调什么?量化参数(QP)。QP 越大,压缩越狠,画质越差。但如果你不懂 QP 是干啥的,你可能会去改分辨率,结果画面是清晰了,但卡成 PPT。
所以,基础概念不是背的,是用来指导实践的。后面每一章,我都会带着你从原理出发,一步步调出最优参数。
一个小练习:打开你手机里的一个视频文件,用播放器看看它的编码信息。是 H.264 还是 H.265?音频是 AAC 还是别的?先养成看参数的习惯。
好了,第一章就到这里。概念先入个门,后面咱们直接上手调参数。你准备好了吗?