getPUAbove函数 获取PU上面的块

本文深入探讨了视频编码中getPUAbove函数的作用,它用于获取当前处理单元(PU)上方的块信息。理解这一功能对于优化视频压缩效率至关重要,涉及到的关键概念包括PU、块结构和上下文依赖性。
摘要由CSDN通过智能技术生成
const TComDataCU* TComDataCU::getPUAbove( UInt& uiAPartUnitIdx,
                                          UInt uiCurrPartUnitIdx,
                                          Bool bEnforceSliceRestriction,
                                          Bool planarAtCtuBoundary,
                                          Bool bEnforceTileRestriction ) const
{
//当前PU块的最上边的4x4小块的Raster
  UInt uiAbsPartIdx       = g_auiZscanToRaster[uiCurrPartUnitIdx];
//当前CU在当前CTU中的Raster位置
  UInt uiAbsZorderCUIdx   = g_auiZscanToRaster[m_absZIdxInCtu];
  const UInt numPartInCtuWidth = m_pcPic->getNumPartInCtuWidth();
//如果当前PU不在当前CTU的第0行
  if ( !RasterAddress::isZeroRow( uiAbsPartIdx, numPartInCtuWidth ) )
  {
//uiAPartUnitIdx 表示当前PU与uiAbsPartIdx 同列的上一行的4x4小块位置
    uiAPartUnitIdx = g_auiRasterToZscan[ uiAbsPartIdx - numPartInCtuWidth ];
//如果当前PU的uiAbsPartIdx的块位置与当前CU处于同一行,则返回当前CTU指针以及uiAPartUnitIdx 
    if ( RasterAddress::isEqualRow( uiAbsPartIdx, uiAbsZorderCUIdx, numPart
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值