shithub: openh264

Download patch

ref: e762f96ace746125b36b492a247a6249ead0ee5b
parent: 456a6cf3a244cd79f211be7590e0b5b29e430319
author: xiaotiansf <[email protected]>
date: Wed Jan 2 07:19:06 EST 2019

Fix modified Colocated MB type for B frame decoding direct prediction mode.

--- a/codec/decoder/core/src/mv_pred.cpp
+++ b/codec/decoder/core/src/mv_pred.cpp
@@ -320,7 +320,10 @@
   }
 
   MbType coloc_mbType = colocPic->pMbType[iMbXy];
-
+  if (coloc_mbType == MB_TYPE_SKIP) {
+    //This indicates the colocated MB is P SKIP MB
+    coloc_mbType |= MB_TYPE_16x16 | MB_TYPE_P0L0 | MB_TYPE_P1L0;
+  }
   if (IS_Inter_8x8 (coloc_mbType) && !pCtx->pSps->bDirect8x8InferenceFlag) {
     subMbType = SUB_MB_TYPE_4x4 | MB_TYPE_P0L0 | MB_TYPE_P0L1 | MB_TYPE_DIRECT;
     mbType |= MB_TYPE_8x8 | MB_TYPE_L0 | MB_TYPE_L1;