Changeset 813 in 3DVCSoftware for branches/HTM-9.3-dev3-Hisilicon


Ignore:
Timestamp:
29 Jan 2014, 13:20:27 (11 years ago)
Author:
hisilicon-htm
Message:

Harmonization between G0111 and G0122

Location:
branches/HTM-9.3-dev3-Hisilicon/source/Lib
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-9.3-dev3-Hisilicon/source/Lib/TLibDecoder/TDecCu.cpp

    r799 r813  
    922922  UInt uiHeight       = pcCU->getHeight ( 0 );
    923923#if QC_PKU_SDC_SPLIT_G0123
     924#if HS_TSINGHUA_SDC_SPLIT_G0111
     925#if QC_GENERIC_SDC_G0122
     926  TComWedgelet* dmm4SegmentationOrg = new TComWedgelet( uiWidth, uiHeight );
     927#endif
     928#else
    924929#if QC_GENERIC_SDC_G0122
    925930  TComWedgelet* dmm4Segmentation = new TComWedgelet( uiWidth, uiHeight );
     931#endif
    926932#endif
    927933#endif
     
    10121018#endif
    10131019#endif
     1020#if HS_TSINGHUA_SDC_SPLIT_G0111
     1021  TComWedgelet* dmm4Segmentation = new TComWedgelet( uiWidth, uiHeight );
     1022#endif
    10141023  //===== get prediction signal =====
    10151024#if H_3D_DIM
     
    10211030#endif
    10221031      );
     1032#if HS_TSINGHUA_SDC_SPLIT_G0111
     1033    Bool* dmm4PatternSplit = dmm4Segmentation->getPattern();
     1034    Bool* dmm4PatternOrg = dmm4SegmentationOrg->getPattern();
     1035    for( UInt k = 0; k < (uiWidth*uiHeight); k++ )
     1036    {
     1037      dmm4PatternOrg[k+(uiAbsPartIdx<<4)] = dmm4PatternSplit[k];
     1038    }
     1039#endif
    10231040  }
    10241041  else
     
    10451062    }
    10461063    uiAbsPartIdx += ( (uiWidth * uiWidth) >> 4 );
     1064#if HS_TSINGHUA_SDC_SPLIT_G0111
     1065    dmm4Segmentation->destroy(); delete dmm4Segmentation;
     1066#endif
    10471067  }
    10481068  uiAbsPartIdx = 0;
     
    10801100  {
    10811101    uiNumSegments = 2;
     1102#if HS_TSINGHUA_SDC_SPLIT_G0111
     1103    pbMask  = dmm4SegmentationOrg->getPattern();
     1104    uiMaskStride = dmm4SegmentationOrg->getStride();
     1105#else
    10821106    pbMask  = dmm4Segmentation->getPattern();
    10831107    uiMaskStride = dmm4Segmentation->getStride();
     1108#endif
    10841109  }
    10851110#endif
     
    11461171  }
    11471172#if QC_GENERIC_SDC_G0122
     1173#if HS_TSINGHUA_SDC_SPLIT_G0111
     1174  dmm4SegmentationOrg->destroy(); delete dmm4SegmentationOrg;
     1175#else
    11481176  dmm4Segmentation->destroy(); delete dmm4Segmentation;
     1177#endif
    11491178#endif
    11501179}
  • branches/HTM-9.3-dev3-Hisilicon/source/Lib/TLibEncoder/TEncSearch.cpp

    r799 r813  
    18911891  UInt    uiHeight          = pcCU     ->getHeight  ( 0 );
    18921892#if QC_PKU_SDC_SPLIT_G0123
     1893#if HS_TSINGHUA_SDC_SPLIT_G0111
     1894#if QC_GENERIC_SDC_G0122
     1895  TComWedgelet* dmm4SegmentationOrg = new TComWedgelet( uiWidth, uiHeight );
     1896#endif
     1897#else
    18931898#if QC_GENERIC_SDC_G0122
    18941899  TComWedgelet* dmm4Segmentation = new TComWedgelet( uiWidth, uiHeight );
     1900#endif
    18951901#endif
    18961902#endif
     
    19111917  if ( ( uiWidth >> pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize() ) > 1 )
    19121918  {
    1913     if ( getDimType( uiLumaPredMode ) == DMM4_IDX )
    1914     {
    1915       dmm4Segmentation->destroy(); delete dmm4Segmentation;
    1916       ruiDist = MAX_INT;
    1917       return;
    1918     }
    19191919    numParts = uiWidth * uiWidth >> ( 2 * pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize() );
    19201920    sdcDepth = g_aucConvertToBit[uiWidth] + 2 - pcCU->getSlice()->getSPS()->getQuadtreeTULog2MaxSize();
     
    19771977#endif
    19781978#endif
     1979#if HS_TSINGHUA_SDC_SPLIT_G0111
     1980#if QC_GENERIC_SDC_G0122
     1981  TComWedgelet* dmm4Segmentation = new TComWedgelet( uiWidth, uiHeight );
     1982#endif
     1983#endif
    19791984  //===== get prediction signal =====
    19801985#if H_3D_DIM
     
    19982003#endif
    19992004      );
     2005#if HS_TSINGHUA_SDC_SPLIT_G0111
     2006    Bool* dmm4PatternSplit = dmm4Segmentation->getPattern();
     2007    Bool* dmm4PatternOrg = dmm4SegmentationOrg->getPattern();
     2008    for( UInt k = 0; k < (uiWidth*uiHeight); k++ )
     2009    {
     2010      dmm4PatternOrg[k+(uiAbsPartIdx<<4)] = dmm4PatternSplit[k];
     2011    }
     2012#endif
    20002013  }
    20012014  else
     
    20212034    }
    20222035    uiAbsPartIdx += ( ( uiWidth * uiWidth ) >> 4 );
     2036#if HS_TSINGHUA_SDC_SPLIT_G0111
     2037    dmm4Segmentation->destroy(); delete dmm4Segmentation;
     2038#endif
    20232039  }
    20242040  uiAbsPartIdx = 0;
     
    20582074  {
    20592075    uiNumSegments = 2;
     2076#if HS_TSINGHUA_SDC_SPLIT_G0111
     2077    pbMask  = dmm4SegmentationOrg->getPattern();
     2078    uiMaskStride = dmm4SegmentationOrg->getStride();
     2079#else
    20602080    pbMask  = dmm4Segmentation->getPattern();
    20612081    uiMaskStride = dmm4Segmentation->getStride();
     2082#endif
    20622083  }
    20632084#endif
     
    22002221    dRDCost = m_pcRdCost->calcRdCost( uiBits, ruiDist );
    22012222#if QC_GENERIC_SDC_G0122
     2223#if HS_TSINGHUA_SDC_SPLIT_G0111
     2224  dmm4SegmentationOrg->destroy(); delete dmm4SegmentationOrg;
     2225#else
    22022226  dmm4Segmentation->destroy(); delete dmm4Segmentation;
     2227#endif
    22032228#endif
    22042229}
Note: See TracChangeset for help on using the changeset viewer.