HM 参考模型代码中的率失真流程总体上主要有三个部分,分别是 AMVP 模式的帧间预测,merge 模式的帧间预测和帧内预测。
    帧间预测分为两种,merge 模式和 AMVP 模式。AMVP 模式在 HEVC 中是常规的帧间预测。merge 模式只支持 2Nx2N 的划分。merge 模式还可细分一个特殊的 skip 模式。
    帧内预测模式只支持 2Nx2N 和 NxN 的划分模式。
    一、先确定 iMinQP 和 iMaxQP 。这两个值可以从码率控制对象中得到,也可以自定义。
    二、模式选择
    如果是 I 类型的 slice ,处理帧内预测的两种模式:2Nx2N 和 NxN。
    如果是 P 类型和 B 类型的帧,先处理 merge 模式和 AMVP 模式的 2Nx2N 划分模式。
    遍历 iMinQP 和 iMaxQP 之间的所有 QP 参数。尝试 merge 模式和 AMVP 的 2Nx2N 模式,选出最优的模式。
    compressCU 整体流程
    率失真优化流程 - 图1
    帧内预测模式选择的流程
    率失真优化流程 - 图2
    帧间预测模式选择的流程
    率失真优化流程 - 图3