AVC 模块
视频解码引擎包含了时序控制、熵解码、反量化、反变换、重构、帧内预测、帧间预测、deblock、后处理等模块,每个模块的处理的基本单元是 Macroblock (MB)。
下图呈现了 VE 视频解码引擎的功能模块以及外部接口示意。
视频解码引擎模块简介如下:
- 熵解码:从外部 DRAM 读取原始码流,并分别解码出 MB 信息与块系数信息,其中 MB 信息会传递给帧内或帧间预测模块、Deblock 模块,块系数信息会传递给反量化模块。
- 反量化模块:根据接收到的块系数以及反量化参数进行反量化,并将反量化后的结果传递给反变换模块。
- 反变换模块:根据当前宏块信息选择正确的反变换方式进行反变换,将反变换后的残差系数传递给重构模块。
- 帧内和帧间模块:根据收到的 MB 信息从参考帧中计算出当前块的预测值。
- 重构模块:将收到的残差系数与预测值进行相加,得到当前的块的像素值。
- Deblock 模块:根据当前的 MB 信息将当前块边沿像素值进行平滑滤波,输出最终的解码图像。
- 时序控制:根据图像标准与 MB 类型对各个子模块进行调度,确保解码过程的正确性与高效率,为了提高解码效率,各子模块之间采取并行的方式进行。
