Changeset 773 in 3DVCSoftware for trunk/source/Lib/TLibEncoder/TEncCu.cpp
- Timestamp:
- 16 Jan 2014, 09:56:13 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/Lib/TLibEncoder/TEncCu.cpp
r735 r773 497 497 #endif 498 498 #if H_3D_IC 499 #if SEC_ONLY_TEXTURE_IC_F0151500 499 Bool bICEnabled = rpcTempCU->getSlice()->getViewIndex() && ( rpcTempCU->getSlice()->getSliceType() == P_SLICE || rpcTempCU->getSlice()->getSliceType() == B_SLICE ) && !rpcTempCU->getSlice()->getIsDepth(); 501 #else502 Bool bICEnabled = rpcTempCU->getSlice()->getViewIndex() && ( rpcTempCU->getSlice()->getSliceType() == P_SLICE || rpcTempCU->getSlice()->getSliceType() == B_SLICE );503 #endif504 500 bICEnabled = bICEnabled && rpcTempCU->getSlice()->getApplyIC(); 505 501 #endif … … 571 567 PartSize ePartTemp = rpcTempCU->getPartitionSize(0); 572 568 rpcTempCU->setPartSizeSubParts( SIZE_2Nx2N, 0, uiDepth ); 573 #if QC_DEPTH_IV_MRG_F0125569 #if H_3D_IV_MERGE 574 570 if (rpcTempCU->getSlice()->getIsDepth() ) 575 571 { … … 586 582 DvInfo.bDV = rpcTempCU->getDisMvpCandNBDV(&DvInfo); 587 583 588 #if QC_DEPTH_IV_MRG_F0125584 #if H_3D_IV_MERGE 589 585 } 590 586 #endif … … 1779 1775 #endif 1780 1776 1781 #if H_3D_ARP && LGE_SHARP_VSP_INHERIT_F01041777 #if H_3D_ARP 1782 1778 DisInfo cOrigDisInfo = rpcTempCU->getDvInfo(0); 1783 1779 #else … … 1787 1783 1788 1784 #if H_3D_VSP 1789 #if ! (H_3D_ARP && LGE_SHARP_VSP_INHERIT_F0104)1785 #if !H_3D_ARP 1790 1786 Int vspFlag[MRG_MAX_NUM_CANDS_MEM]; 1791 1787 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 1792 1788 InheritedVSPDisInfo inheritedVSPDisInfo[MRG_MAX_NUM_CANDS_MEM]; 1793 #if ETRIKHU_MERGE_REUSE_F00931794 1789 rpcTempCU->m_bAvailableFlagA1 = 0; 1795 1790 rpcTempCU->m_bAvailableFlagB1 = 0; … … 1799 1794 rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand ); 1800 1795 rpcTempCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, vspFlag,inheritedVSPDisInfo, numValidMergeCand ); 1801 #else 1802 rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, vspFlag, inheritedVSPDisInfo, numValidMergeCand ); 1803 #endif 1804 #endif 1805 #else 1806 #if ETRIKHU_MERGE_REUSE_F0093 1796 #endif 1797 #else 1798 #if H_3D 1807 1799 rpcTempCU->m_bAvailableFlagA1 = 0; 1808 1800 rpcTempCU->m_bAvailableFlagB1 = 0; … … 1822 1814 Int mergeCandBuffer[MRG_MAX_NUM_CANDS]; 1823 1815 #endif 1824 #if H_3D_ARP && LGE_SHARP_VSP_INHERIT_F01041816 #if H_3D_ARP 1825 1817 for( UInt ui = 0; ui < rpcTempCU->getSlice()->getMaxNumMergeCand(); ++ui ) 1826 1818 #else … … 1851 1843 for( Int nARPW=nARPWMax; nARPW >= 0 ; nARPW-- ) 1852 1844 { 1853 #if FIX_MISSING_MACRO_R6901854 1845 memset( mergeCandBuffer, 0, MRG_MAX_NUM_CANDS_MEM*sizeof(Int) ); 1855 #else1856 memset( mergeCandBuffer, 0, MRG_MAX_NUM_CANDS*sizeof(Int) );1857 #endif1858 #if LGE_SHARP_VSP_INHERIT_F01041859 1846 rpcTempCU->setPartSizeSubParts( SIZE_2Nx2N, 0, uhDepth ); // interprets depth relative to LCU level 1860 1847 rpcTempCU->setCUTransquantBypassSubParts( m_pcEncCfg->getCUTransquantBypassFlagValue(), 0, uhDepth ); … … 1868 1855 memset(vspFlag, 0, sizeof(Int)*MRG_MAX_NUM_CANDS_MEM); 1869 1856 InheritedVSPDisInfo inheritedVSPDisInfo[MRG_MAX_NUM_CANDS_MEM]; 1870 #if MTK_SPIVMP_F01101857 #if H_3D_SPIVMP 1871 1858 Bool bSPIVMPFlag[MRG_MAX_NUM_CANDS_MEM]; 1872 1859 memset(bSPIVMPFlag, false, sizeof(Bool)*MRG_MAX_NUM_CANDS_MEM); … … 1876 1863 puhInterDirSP = new UChar[rpcTempCU->getPic()->getPicSym()->getNumPartition()]; 1877 1864 #endif 1878 #if ETRIKHU_MERGE_REUSE_F00931865 #if H_3D 1879 1866 rpcTempCU->initAvailableFlags(); 1880 1867 rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand ); 1881 1868 rpcTempCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, vspFlag,inheritedVSPDisInfo 1882 #if MTK_SPIVMP_F01101869 #if H_3D_SPIVMP 1883 1870 , bSPIVMPFlag, pcMvFieldSP, puhInterDirSP 1884 1871 #endif … … 1888 1875 rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, vspFlag, inheritedVSPDisInfo, numValidMergeCand ); 1889 1876 #endif 1890 #endif 1877 1891 1878 #endif 1892 1879 for( UInt uiNoResidual = 0; uiNoResidual < iteration; ++uiNoResidual ) … … 1923 1910 rpcTempCU->setDvInfoSubParts(inheritedVSPDisInfo[uiMergeCand].m_acDvInfo, 0, 0, uhDepth ); 1924 1911 #endif 1925 #if MTK_SPIVMP_F01101912 #if H_3D_SPIVMP 1926 1913 rpcTempCU->setSPIVMPFlagSubParts(bSPIVMPFlag[uiMergeCand], 0, 0, uhDepth); 1927 1914 if (bSPIVMPFlag[uiMergeCand]) … … 1949 1936 rpcTempCU->getCUMvField( REF_PIC_LIST_0 )->setAllMvField( cMvFieldNeighbours[0 + 2*uiMergeCand], SIZE_2Nx2N, 0, 0 ); // interprets depth relative to rpcTempCU level 1950 1937 rpcTempCU->getCUMvField( REF_PIC_LIST_1 )->setAllMvField( cMvFieldNeighbours[1 + 2*uiMergeCand], SIZE_2Nx2N, 0, 0 ); // interprets depth relative to rpcTempCU level 1951 #if MTK_SPIVMP_F0110 1952 } 1953 #endif 1954 #if H_3D_ARP && !QC_MTK_INTERVIEW_ARP_F0123_F0108 1955 if( nARPW ) 1956 { 1957 Bool bSignalflag[2] = { true, true }; 1958 for( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx ++ ) 1959 { 1960 Int iRefIdx = cMvFieldNeighbours[uiRefListIdx + 2*uiMergeCand].getRefIdx(); 1961 RefPicList eRefList = uiRefListIdx ? REF_PIC_LIST_1 : REF_PIC_LIST_0; 1962 if( iRefIdx < 0 || rpcTempCU->getSlice()->getPOC() == rpcTempCU->getSlice()->getRefPOC(eRefList, iRefIdx) ) 1963 { 1964 bSignalflag[uiRefListIdx] = false; 1965 } 1966 } 1967 if( !bSignalflag[0] && !bSignalflag[1] ) 1968 { 1969 #if LGE_SHARP_VSP_INHERIT_F0104 1970 continue; 1971 #else 1972 rpcTempCU->setARPWSubParts( 0 , 0 , uhDepth ); 1973 #endif 1974 } 1938 #if H_3D_SPIVMP 1975 1939 } 1976 1940 #endif … … 2093 2057 } 2094 2058 } 2095 #if MTK_SPIVMP_F0110 2096 #if MTK_F0110_FIX 2059 #if H_3D_SPIVMP 2097 2060 delete[] pcMvFieldSP; 2098 2061 delete[] puhInterDirSP; 2099 #else2100 delete pcMvFieldSP;2101 delete puhInterDirSP;2102 #endif2103 2062 #endif 2104 2063 #if H_3D_ARP … … 2170 2129 2171 2130 m_pcPredSearch->motionCompensation( rpcTempCU , m_ppcPredYuvTemp[uhDepth] ); 2172 2173 #if !QC_MTK_INTERVIEW_ARP_F0123_F01082174 if(rpcTempCU->getPartitionSize(0)==SIZE_2Nx2N)2175 {2176 Bool bSignalflag[2] = { true, true };2177 for(UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx ++ )2178 {2179 RefPicList eRefList = uiRefListIdx ? REF_PIC_LIST_1 : REF_PIC_LIST_0;2180 Int iRefIdx = rpcTempCU->getCUMvField(eRefList)->getRefIdx(0);2181 if( iRefIdx < 0 || rpcTempCU->getSlice()->getPOC() == rpcTempCU->getSlice()->getRefPOC(eRefList, iRefIdx) )2182 {2183 bSignalflag[uiRefListIdx] = false;2184 }2185 }2186 if( !bSignalflag[0] && !bSignalflag[1] )2187 {2188 rpcTempCU->setARPWSubParts( 0 , 0 , uhDepth );2189 }2190 }2191 #endif2192 2131 } 2193 2132 else … … 2209 2148 { 2210 2149 m_ppcWeightedTempCU[uhDepth]->copyPartFrom( rpcTempCU , 0 , uhDepth ); 2211 2212 #if !QC_MTK_INTERVIEW_ARP_F0123_F01082213 Bool bSignalflag[2] = { true, true };2214 for(UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx ++ )2215 {2216 RefPicList eRefList = uiRefListIdx ? REF_PIC_LIST_1 : REF_PIC_LIST_0;2217 Int iRefIdx = rpcTempCU->getCUMvField(eRefList)->getRefIdx(0);2218 if( iRefIdx < 0 || rpcTempCU->getSlice()->getPOC() == rpcTempCU->getSlice()->getRefPOC(eRefList, iRefIdx) )2219 {2220 bSignalflag[uiRefListIdx] = false;2221 }2222 }2223 if( !bSignalflag[0] && !bSignalflag[1])2224 {2225 rpcTempCU->setARPWSubParts( 0 , 0 , uhDepth );2226 }2227 #endif2228 2150 } 2229 2151 }
Note: See TracChangeset for help on using the changeset viewer.