Ignore:
Timestamp:
26 May 2015, 07:13:47 (10 years ago)
Author:
etri-htm
Message:

Reactive_MLC (the MACRO is "NH_3D_MLC")

Location:
branches/HTM-14.1-update-dev3-ETRI/source/Lib/TLibEncoder
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-14.1-update-dev3-ETRI/source/Lib/TLibEncoder/TEncCu.cpp

    r1217 r1233  
    17621762{
    17631763  assert( rpcTempCU->getSlice()->getSliceType() != I_SLICE );
    1764 #if H_3D_IV_MERGE
     1764#if NH_3D_MLC
    17651765  TComMvField  cMvFieldNeighbours[MRG_MAX_NUM_CANDS_MEM << 1]; // double length for mv of both lists
    17661766  UChar uhInterDirNeighbours[MRG_MAX_NUM_CANDS_MEM];
     
    17971797
    17981798  rpcTempCU->setPartSizeSubParts( SIZE_2Nx2N, 0, uhDepth ); // interprets depth relative to CTU level
     1799
    17991800#if H_3D_VSP
    18001801#if !H_3D_ARP
     
    18021803  memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM);
    18031804  InheritedVSPDisInfo inheritedVSPDisInfo[MRG_MAX_NUM_CANDS_MEM];
    1804   rpcTempCU->m_bAvailableFlagA1 = 0;
    1805   rpcTempCU->m_bAvailableFlagB1 = 0;
    1806   rpcTempCU->m_bAvailableFlagB0 = 0;
    1807   rpcTempCU->m_bAvailableFlagA0 = 0;
    1808   rpcTempCU->m_bAvailableFlagB2 = 0;
     1805#if NH_3D_MLC
     1806  rpcTempCU->initAvailableFlags();
     1807#endif
    18091808  rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand );
    1810   rpcTempCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, vspFlag,inheritedVSPDisInfo, numValidMergeCand );
    1811 #endif
    1812 #else
    1813 #if H_3D
    1814   rpcTempCU->m_bAvailableFlagA1 = 0;
    1815   rpcTempCU->m_bAvailableFlagB1 = 0;
    1816   rpcTempCU->m_bAvailableFlagB0 = 0;
    1817   rpcTempCU->m_bAvailableFlagA0 = 0;
    1818   rpcTempCU->m_bAvailableFlagB2 = 0;
    1819   rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand );
    1820   rpcTempCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, numValidMergeCand );
    1821 #else
     1809#if NH_3D_MLC
     1810  rpcTempCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours
     1811#if H_3D_SPIVMP
     1812    , pcMvFieldSP, puhInterDirSP
     1813#endif
     1814    , numValidMergeCand
     1815    );
     1816
     1817  rpcTempCU->buildMCL( cMvFieldNeighbours,uhInterDirNeighbours, vspFlag
     1818#if H_3D_SPIVMP
     1819    , bSPIVMPFlag
     1820#endif
     1821    , numValidMergeCand
     1822    );
     1823#endif
     1824#endif
     1825#else
     1826#if NH_3D_MLC
     1827  rpcTempCU->initAvailableFlags();
     1828#endif
    18221829  rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, numValidMergeCand );
    1823 #endif
    1824 #endif
    1825 #if H_3D_IV_MERGE
     1830#if NH_3D_MLC
     1831  rpcTempCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours
     1832#if H_3D_SPIVMP
     1833    , pcMvFieldSP, puhInterDirSP
     1834#endif
     1835    , numValidMergeCand
     1836    );
     1837#if NH_3D_MLC
     1838  rpcTempCU->buildMCL( cMvFieldNeighbours,uhInterDirNeighbours
     1839#if H_3D_SPIVMP
     1840    , bSPIVMPFlag
     1841#endif
     1842    , numValidMergeCand
     1843    );
     1844#endif
     1845#endif
     1846#endif
     1847
     1848
     1849
     1850
     1851
     1852
     1853
     1854
     1855#if NH_3D_MLC
    18261856  Int mergeCandBuffer[MRG_MAX_NUM_CANDS_MEM];
    18271857#else
     
    18311861for( UInt ui = 0; ui < rpcTempCU->getSlice()->getMaxNumMergeCand(); ++ui )
    18321862#else
     1863#if NH_3D_MLC
     1864  for( UInt ui = 0; ui < rpcTempCU->getSlice()->getMaxNumMergeCand(); ++ui )
     1865#else
    18331866  for( UInt ui = 0; ui < numValidMergeCand; ++ui )
    18341867#endif
    1835 
     1868#endif
    18361869  {
    18371870    mergeCandBuffer[ui] = 0;
     
    18871920      );
    18881921
    1889     rpcTempCU->buildMCL( cMvFieldNeighbours,uhInterDirNeighbours, vspFlag
     1922    rpcTempCU->buildMCL( cMvFieldNeighbours,uhInterDirNeighbours
     1923#if H_3D_VSP
     1924      , vspFlag
     1925#endif
    18901926#if H_3D_SPIVMP
    18911927      , bSPIVMPFlag
  • branches/HTM-14.1-update-dev3-ETRI/source/Lib/TLibEncoder/TEncSearch.cpp

    r1200 r1233  
    39253925    {
    39263926      pcCU->setPartSizeSubParts( SIZE_2Nx2N, 0, uiDepth ); // temporarily set
    3927 #if H_3D
     3927#if NH_3D_MLC
    39283928      pcCU->initAvailableFlags();
    3929       pcCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, numValidMergeCand);
     3929      pcCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, numValidMergeCand );
    39303930      pcCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours
    39313931#if H_3D_SPIVMP
     
    39423942        , pbSPIVMPFlag
    39433943#endif
    3944                                         , numValidMergeCand
     3944        , numValidMergeCand
    39453945        );
    39463946#else
     
    39523952  else
    39533953  {
    3954 #if H_3D
     3954#if NH_3D_MLC
    39553955    pcCU->initAvailableFlags();
    3956     pcCU->getInterMergeCandidates( uiAbsPartIdx, iPUIdx, cMvFieldNeighbours,uhInterDirNeighbours, numValidMergeCand);
     3956    pcCU->getInterMergeCandidates( uiAbsPartIdx, iPUIdx, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand );
    39573957    pcCU->xGetInterMergeCandidates( uiAbsPartIdx, iPUIdx, cMvFieldNeighbours, uhInterDirNeighbours
    39583958#if H_3D_SPIVMP
     
    39693969      , pbSPIVMPFlag
    39703970#endif
    3971                                       , numValidMergeCand
     3971      , numValidMergeCand
    39723972      );
    39733973#else
Note: See TracChangeset for help on using the changeset viewer.