HM--TAppEncoder 函数调用关系图以及编码入口

本文详细分析了HM中HEVC视频编码器TAppEncoder的函数调用关系,包括CU编码、熵编码、环路滤波和码率控制的关键函数。介绍了TAppEncoder的主要流程,如读取参数、编码初始化、编码任务执行、帧内预测和帧间预测等。xCompressCU函数是核心,负责CU的编码,通过xCheckRDCostIntra和xCheckRDCostInter进行帧内和帧间的代价分析。
摘要由CSDN通过智能技术生成

HM代码分析–TAppEncoder
一.函数调用关系图
HM中的HEVC视频编码器TAppEncoder的函数调用关系图如下所示。

在这里插入图片描述

下面解释一下图中关键标记的含义。

1.函数背景色
函数在图中以方框的形式表现出来。不同的背景色标志了该函数不同的作用:
白色背景的函数:不加区分的普通内部函数。
黄色背景函数:滤波函数(Filter)。用于环路滤波,半像素插值,SSIM/PSNR的计算。
绿色背景的函数:CU编码函数(Encode)。通过对残差的DCT变换、量化等方式对CU进行编码。
紫色背景的函数:熵编码函数(Entropy Coding)。对CU编码后的数据进行CABAC熵编码。
浅蓝色背景函数:码率控制函数(Rate Control)。对码率进行控制的函数。

2.箭头线
箭头线标志了函数的调用关系:
黑色箭头线:不加区别的调用关系。
黄色箭头线:滤波函数(Filter)之间的调用关系。
绿色箭头线:CU编码函数(Encode)之间的调用关系。
紫色箭头线:熵编码函数(Entropy Coding)之间的调用关系。

3.下文记录结构图中的几个关键部分。

1)普通内部函数
普通内部函数指的是TAppEncoder中还没有进行分类的函数。例如:
编码器的main()函数中调用的TAppEncTop类

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值