LV007-基本概念
一、编码格式
ITU-T for ITU Telecommunication Standardization Sector, 是国际电信联盟管理下的专门制定电信标准的分支机构, 是 H.26X 标准的制定者。
H.261:主要在老的视频会议和视频电话产品中使用。
H.263:主要用在视频会议、视频电话和网络视频上。
H.264:H.264/MPEG-4 第十部分,又称 AVC(Advanced Video Coding,高级视频编码),是一种视频压缩标准,一种被广泛使用的高精度视频的录制、压缩和发布格式。是目前应用最为广泛的视频编码格式之一,它就像视频编码领域的 “通用语言”,在网络视频、直播、监控、蓝光光盘等众多场景中都能看到它的身影。
H.265:高效率视频编码(High Efficiency Video Coding,简称 HEVC)是一种视频压缩标准,H.264/MPEG-4 AVC 的继任者,其诞生的主要目的就是为了应对日益增长的高清和超高清视频需求。在当今这个 4K 甚至 8K 视频逐渐普及的时代,H.265 发挥着越来越重要的作用。HEVC 被认为不仅提升图像质量,同时也能达到 H.264/MPEG-4 AVC 两倍之压缩率(等同于同样画面质量下比特率减少了 50%),这是目前发展的趋势。
MPEG 全称是 Moving Pictures Experts Group,它是“动态图象专家组”的英文缩写。
(1)MPEG-1 第二部分(MPEG-1 第二部分主要使用在 VCD 上,有些在线视频也使用这种格式。该编解码器的质量大致上和原有的 VHS 录像带相当。)
(2)MPEG-2 第二部分(MPEG-2 第二部分等同于 H.262,使用在 DVD、SVCD 和大多数数字视频广播系统和有线分布系统(cable distribution systems)中。)
(3)MPEG-4 第二部分(MPEG-4 第二部分标准可以使用在网络传输、广播和媒体存储上。比起 MPEG-2 和第一版的 H.263,它的压缩性能有所提高。)
(4)MPEG-4 第十部分(MPEG-4 第十部分技术上和 ITU-T H.264 是相同的标准,有时候也被叫做“AVC”)最后这两个编码组织合作,诞生了 H.264/AVC 标准。ITU-T 给这个标准命名为 H.264,而 ISO/IEC 称它为 MPEG-4 高级视频编码(Advanced Video Coding,AVC)。
- AV1:是由开放媒体联盟(AOM,Alliance for Open Media)在 2018 年发布的,AV1 的前身是 VP9。AOM 的成员已经涵盖了 Amazon、Cisco、Google、Intel、Microsoft、Mozilla、Netflix、AMD、ARM 和 NVIDIA,它成立的目的是为互联网和其他市场创建一个 开源 的视频编解码器(AV1,AOMedia Video codec),旨在取代 VP9 并成为与 HEVC(H.265)竞争的主要视频编码标准,AV1 压缩率比流行的 H.264 格式高 50%、比 VP9 格式高 20%。
- VP9:是由 Google 主导开发的开放格式、无使用授权费的视频压缩标准,其开发初期曾命名为 Next Gen Open Video(NGOV,下一代开放视频)与 VP-Next,作为 VP8 的后继者于 2013 年 6 月 17 日正式定案,隶属于 WebM 开源项目。该标准采用帧间预测、变换编码和运动补偿技术,支持 64×64 宏块划分、1/8 像素精度的复合预测以及 32x32 至 4x4 的多级变换,目标是在相同质量下较 VP8 减少 50%比特率,并提供 10/12 位编码与 HDR 支持。
二、帧的基础概念
I 帧:独立编解码,影响 GOP 组中其他帧的质量,信息比较大,帧大小一般会比较大。
P 帧:编解码需要参考其他帧,因为部分信息在前一帧中包含,压缩比较高,帧大小较小。
Tips:
网络中如果丢失某一个 P 帧,则会出现后面的 P 帧无法解码的问题,导致预览卡顿。
一般而言,1080P 编码下一个 I 帧大概 400K~1M 之间。P 帧可能只有 I 帧的 1/10。
三、图像质量与码率
1. 码率
其实前面已经了解过了,码率就是单位时间内码率的 bit 数。一般单位为 Mbps。码率是编码码率大小的度量单位,一般码率越大,占用越多的存储空间和网络带宽,图像质量越好。
一些常见场景的码率情况:

高复杂场景就类似于森林,花坛这种,画面中存在大量的树叶就会导致出现很多细节,可能会导致码率波动较大。
2. QP 值
量化 就是把信号的连续取值映射成多个离散的幅值的过程,实现了信号取值多对一的映射。
QP(Quantizer Parameter)量化参数,表明了 图像空间细节的压缩情况。QP 值在一定程度上决定了图像质量。现有的码率控制算法主要是通过调整离散余弦变换的量化参数大小输出目标码率。实际上,量化参数(QP)反映了空间细节压缩情况,比如 QP 值小,量化越精细,更多细节就会保留,图像质量越高;QP 值越大,就会丢失更多细节,视频画面的清晰度就会越低,图像质量越低。也就是说,QP 和比特率成反比的关系,而且随着视频源复杂度的提高,这种反比关系会更明显。
可以这样理解,QP 值越大,压缩的越厉害,丢掉的画面细节越多,画面越模糊。QP 值越小,丢掉的画面细节越少,画面越清晰。
在编码中,亮度的 QP 最大值是 51、色度的 QP 最大值是 39,在真正开发中调节亮度的 QP 值为主。取值为 0 时编码细节最为精细,取值为 51 时编码细节最为粗糙。
我们一般可以通过 QP 来调节编码器的图像质量,从而控制码率。但是一般我们不会取 0 和 51 这种比较极端的 QP,而是根据实际情况去取一个更为合理的范围。如 10 ~ 51.我们把这个范围内的最小 QP 成为 MinQP。最大 QP 称为 MAXQP。
3. 码率控制
3.1 定码率 CBR
CBR(Constant Bit Rate),恒定码率,一定时间范围内比特率基本保持的恒定,不受图像复杂度的影响。CBR 编码方式可以保证视频的稳定码率,适用于网络带宽固定且稳定的场景,但 图像质量不能保证。该编码方式通常用于直播、电视广播等场景。
- 优点:码率稳定,容易控制。
- 缺点:图像质量不能保证,网络带宽利用率较低,不太适用于网络带宽不稳定的场景。
码控策略如下图:

这种方式只是保证码率始终大致保持不变,并非是完全固定在一个值。
3.2 可变码率 VBR
VBR(Variable Bitrate Coding),可变比特率编码。是指使用不同的压缩比率来实现画面质量和码率的均衡,是码率运行有一定波动的码控方式。其特点是码率会随着运动场景的复杂程度而增大。
视频的整体码率是可以根据图像根据动态变化的,能够适应网络带宽的变化情况。通过连续提高和降低视频压缩比,可以减少码率之间的差异,从而提高画面质量。主要用于对码率波动不敏感,需要保障图像质量细节的场景。
VBR 通常会设置为高中低三档,三档对应的 QP 范围为:高质量:12~35;中质量:18~40;低质量:35~45。
- 优点:能够自适应带宽,保证视频画面质量。
- 缺点:对传输带宽有较高要求,网络带宽不足时会出现流畅度问题。
码控策略如下图:

3.2.1 AVBR
AVBR(Adaptive Variable Bit rate)变码率:AVBR 是通过对 VBR 的进一步改进,增加了自适应动态码率控制功能。该编码方式会根据网络带宽实时调节码率和分辨率,以尽量保证视频的流畅度和清晰度,同时保证网络带宽的高效利用。它能在网络带宽不稳定的情况下,仍然能保持良好的视频质量和播放效果。
优点:平衡了画面质量和码率,可以在网络带宽不稳定的情况下,自动调整码率以保证视频质量和流畅度。
缺点:编码复杂度较高。
3.2.2 QVBR
QVBR(Quality Variable Bit rate)质量码率:QVBR 在 VBR 的基础上,增加了自适应动态质量控制功能。编码器会根据图像质量目标和帧率等因素自适应调节码率,以确保图像质量。这种编码方式减少了码率的小部分波动对图像质量的影响,进一步提高了图像的清晰度和稳定性。
- 优点:能够在保证画面质量的前提下减少码流的波动。
- 缺点:需要更高的码率带宽比。
3.2.3 CVBR
CVBR(Constrained Variable Bit rate)有限码率:CVBR 也是一种自适应码率控制方式,它着重解决了在带宽有限的情况下,视频流的稳定性和流畅度问题。通过增加编码器与解码器的协作,CVBR 可以可以平衡视频码率和清晰度,保证图像质量。
- 优点:平衡想要码流和图像质量的关系,在有限的带宽下提高视频的稳定性。
- 缺点:需要更高的编码效率和复杂度。
3.3 FIXQP
FIXQP(固定质量)是一种视频编码方式,它通过使用特定的量化参数(QP,Quantization Parameter)来实现固定质量的视频编码。在 FIXQP 编码方式中,图像的质量是固定的,编码器会尽力保持视频图像质量稳定,同时控制码率达到一定水平。
这种编码方式适用于对图像质量有较高要求的场景,例如视频剪辑、视频会议等。FIXQP 对视频的码率并没有太多限制,因为它的重点在于保证视频的质量,如果码率过低则会导致视频质量下降的问题。因此,在使用 FIXQP 编码时需要根据实际场景调整码率参数,以保证视频质量和码率能够达到均衡状态。
- 优点:
(1)固定质量,视频质量稳定,适用于对视频质量有较高要求的场景;
(2)编码简单,对硬件配置要求不高。
- 缺点:
(1)不适用于网络带宽受限,需要控制视频码率的场景;
(2)比其他编码方式需要更高的码率带宽比,因为保持图像质量需要更大的码率空间
3.4 恒定码率系数 CRF
CRF(Constant Rate Factor,恒定码率系数)是一种“恒定质量”的编码模式,与恒定比特率(CBR)模式相对。基本上能让编码器在整个编码过程中保持恒定的质量。通常,要实现恒定质量,需要会对每种相同类型的帧进行同等程度的压缩,也就是说,丢弃相同(相对)数量的信息。用技术术语来说,就是维持恒定的 QP(量化参数)。量化参数定义了要从给定的像素块(即宏块)中丢弃多少信息。这通常会导致整个序列的比特率出现大幅波动。
恒定码率系数(CRF)则比前者更为精密。它会对不同的帧进行不同程度的压缩,并根据需要相应地调整 QP,以维持某一水平的感知质量。它通过将运动情况考虑在内来实现这一点。在恒定 QP 模式下,当 QP = 18 时,编码过程会始终保持 QP = 18 不变,无论帧的内容如何(尽管对于不同类型的帧会有一些微小的偏移,但在此可以忽略不计)。而在 CRF = 18 的恒定速率因子模式下,对于高运动帧,它会将 QP 提升至 20(即进行更大程度的压缩),而对于序列中的低运动部分,则将 QP 降低至 16。这本质上改变了比特率随时间的分配方式。
这里有一张图,展示了两个在不同级别(17、23)的恒定 QP 或 CRF 编码的视频片段的比特率变化:

可以看到 CRF 的比特数总是少于 QP,意味着保持质量的同时 CRF 能节省比特。
CRF 适用于获得最佳画质的场景,不适用于需要获得特定的比特率 / 文件大小的场景。
4. 编码评价标准
目前通常评测 编码器效果的指标 有两种
(1)相同输入源, 相同编码器关键配置前提下, 相同码率比较 PSNR。 PSNR,“Peak Signal to Noise Ratio”的缩写,即峰值信噪比,是一种评价图像的客观标准。
(2)相同输入源, 相同编码器关键配置前提下, 相同码率比较 SSIM。SSIM, “structural similarity index”的缩写,即结构相似性,是一种衡量两幅图像相似度的指标。
5. 码率调优
(1)想让图像质量更好,就降低 QP
(2)想要码率更小,可以提高 QP、增大 I 帧间隔
(3)想要码率更稳定,可以使用定码率 CBR。
(4)想要图像更稳定,可以使用可变码率 VBR。
(5)运动剧烈的情况下,可以减少 I 帧与 P 帧的 QP 差。
(6)纹理复杂的时候,可以降低 QP,使画面保留更多的细节。
参考资料:
海康平台推出的 Smart264 编码格式是什么?跟 H264 有什么关系?_samrt 编码-CSDN 博客
视频编码中 vbr 和 cbr 、avbr、 qvbr 、cvbr、fixqp 优缺点-CSDN 博客
了解速率控制模式:什么是 CBR、VBR、CRF 和 Capped-CRF? - 极术社区 - 连接开发者与智能计算生态