MCPcopy Create free account
hub / github.com/cisco/openh264 / WelsTargetMbConstruction

Function WelsTargetMbConstruction

codec/decoder/core/src/decode_slice.cpp:334–357  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

332}
333
334int32_t WelsTargetMbConstruction (PWelsDecoderContext pCtx) {
335 PDqLayer pCurDqLayer = pCtx->pCurDqLayer;
336 if (MB_TYPE_INTRA_PCM == pCurDqLayer->pDec->pMbType[pCurDqLayer->iMbXyIndex]) {
337 //already decoded and reconstructed when parsing
338 return ERR_NONE;
339 } else if (IS_INTRA (pCurDqLayer->pDec->pMbType[pCurDqLayer->iMbXyIndex])) {
340 WelsMbIntraPredictionConstruction (pCtx, pCurDqLayer, 1);
341 } else if (IS_INTER (pCurDqLayer->pDec->pMbType[pCurDqLayer->iMbXyIndex])) { //InterMB
342 if (0 == pCurDqLayer->pCbp[pCurDqLayer->iMbXyIndex]) { //uiCbp==0 include SKIP
343 if (!CheckRefPics (pCtx)) {
344 return ERR_INFO_MB_RECON_FAIL;
345 }
346 return WelsMbInterPrediction (pCtx, pCurDqLayer);
347 } else {
348 WelsMbInterConstruction (pCtx, pCurDqLayer);
349 }
350 } else {
351 WelsLog (& (pCtx->sLogCtx), WELS_LOG_WARNING, "WelsTargetMbConstruction():::::Unknown MB type: %d",
352 pCurDqLayer->pDec->pMbType[pCurDqLayer->iMbXyIndex]);
353 return ERR_INFO_MB_RECON_FAIL;
354 }
355
356 return ERR_NONE;
357}
358
359void WelsChromaDcIdct (int16_t* pBlock) {
360 int32_t iStride = 32;

Callers 2

Calls 5

CheckRefPicsFunction · 0.85
WelsMbInterPredictionFunction · 0.85
WelsMbInterConstructionFunction · 0.85
WelsLogFunction · 0.85

Tested by

no test coverage detected