VVC/VTM1 主线代码流程

  1. int main(int argc, char* argv[])调用pcEncApp->encode();
  2. Void EncApp::encode()调用m_cEncLib.encode( bEos, flush ? 0 : &orgPic, flush ? 0 : &trueOrgPic, snrCSC, recBufList,   iNumEncoded );
  3. Void EncLib::encode()调用 m_cGOPEncoder.compressGOP( m_iPOCLast, m_iNumPicRcvd, m_cListPic, rcListPicYuvRecOut, false, false, snrCSC, m_printFrameMSE );
  4. Void EncGOP::compressGOP()调用m_pcSliceEncoder->compressSlice   ( pcPic, false, false );
  5. Void EncSlice::compressSlice()调用encodeCtus( pcPic, bCompressEntireSlice, bFastDeltaQP, startCtuTsAddr, boundingCtuTsAddr, m_pcLib );
  6. void EncSlice::encodeCtus()调用m_pcCuEncoder->compressCtu( cs, ctuArea, ctuRsAddr, prevQP, currQP );
  7. void EncCu::compressCtu()调用xCompressCU( tempCS, bestCS, *partitioner );
  8. void EncCu::xCompressCU()调用xCheckModeSplit( tempCS, bestCS, partitioner, currTestMode );

xCheckModeSplit( tempCS, bestCS, partitioner, currTestMode )为VTM  QTBTTT结构主要实现处。
--------------------- 
作者:besnia 
来源:CSDN 
原文:https://blog.csdn.net/baidu_28446365/article/details/80422283 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章