Changeset 325 in 3DVCSoftware for branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder
- Timestamp:
- 16 Apr 2013, 14:11:23 (12 years ago)
- Location:
- branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder/TDecCAVLC.cpp
r313 r325 1206 1206 #endif 1207 1207 #endif 1208 #if HHI_MPI || OL_QTLIMIT_PREDCODING_B00681208 #if HHI_MPI || H3D_QTL 1209 1209 Void TDecCavlc::parseSPS(TComSPS* pcSPS, Bool bIsDepth) 1210 1210 #else … … 1447 1447 } 1448 1448 #endif 1449 #if OL_QTLIMIT_PREDCODING_B00681449 #if H3D_QTL 1450 1450 if( bIsDepth ) 1451 1451 { -
branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder/TDecCAVLC.h
r296 r325 114 114 Void parseVPS ( TComVPS* pcVPS ); 115 115 #endif 116 #if HHI_MPI || OL_QTLIMIT_PREDCODING_B0068116 #if HHI_MPI || H3D_QTL 117 117 Void parseSPS ( TComSPS* pcSPS, Bool bIsDepth ); 118 118 #else -
branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder/TDecCu.cpp
r296 r325 409 409 } 410 410 #endif 411 #if H3D_IVRP && !MTK_MDIVRP_C0138412 m_pcEntropyDecoder->decodeResPredFlag( pcCU, uiAbsPartIdx, uiDepth, m_ppcCU[uiDepth], 0 );413 #endif414 411 xFinishDecodeCU( pcCU, uiAbsPartIdx, uiDepth, ruiIsLast ); 415 412 return; … … 460 457 #endif 461 458 462 #if H3D_IVRP && !MTK_MDIVRP_C0138463 if( !pcCU->isIntra( uiAbsPartIdx ) )464 {465 m_pcEntropyDecoder->decodeResPredFlag ( pcCU, uiAbsPartIdx, uiDepth, m_ppcCU[uiDepth], 0 );466 }467 #endif468 459 #if LGE_ILLUCOMP_DEPTH_C0046 && HHI_MPI 469 460 } … … 679 670 m_pcPrediction->motionCompensation( pcCU, m_ppcYuvReco[uiDepth] ); 680 671 #endif 681 #if MTK_MDIVRP_C0138672 #if H3D_IVRP 682 673 if (pcCU->getMergeFlag(0) && pcCU->getMergeIndex(0)==0 && pcCU->getResPredAvail(0)) 683 674 { … … 691 682 #endif 692 683 693 #if H3D_IVRP && !MTK_MDIVRP_C0138694 if( pcCU->getResPredFlag( 0 ) )695 {696 AOF( pcCU->getResPredAvail( 0 ) );697 Bool bOK = pcCU->getResidualSamples( 0,698 #if QC_SIMPLIFIEDIVRP_M24938699 true,700 #endif701 m_ppcYuvResPred[uiDepth] );702 AOF( bOK );703 #if LG_RESTRICTEDRESPRED_M24766704 Int iPUResiPredShift[4];705 pcCU->getPUResiPredShift(iPUResiPredShift, 0);706 m_ppcYuvReco[uiDepth]->add(iPUResiPredShift, pcCU->getPartitionSize(0), m_ppcYuvResPred[uiDepth], pcCU->getWidth( 0 ), pcCU->getHeight( 0 ) );707 #else708 m_ppcYuvReco[uiDepth]->add( m_ppcYuvResPred[uiDepth], pcCU->getWidth( 0 ), pcCU->getHeight( 0 ) );709 #endif710 }711 #endif712 713 684 // inter recon 714 685 xDecodeInterTexture( pcCU, 0, uiDepth ); … … 722 693 { 723 694 #if H3D_IVRP 724 #if MTK_MDIVRP_C0138725 695 if (pcCU->getMergeFlag(0) && pcCU->getMergeIndex(0)==0 && pcCU->getResPredAvail(0)) 726 #else727 if( pcCU->getResPredFlag( 0 ) )728 #endif729 696 { 730 697 m_ppcYuvReco[uiDepth]->clip( pcCU->getWidth( 0 ), pcCU->getHeight( 0 ) ); -
branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder/TDecEntropy.cpp
r296 r325 108 108 } 109 109 110 #if H3D_IVRP && !MTK_MDIVRP_C0138111 Void112 TDecEntropy::decodeResPredFlag( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth, TComDataCU* pcSubCU, UInt uiPUIdx )113 {114 Bool bResPredAvailable = false;115 Bool bResPredFlag = false;116 117 Bool bResPredAllowed = (!pcCU->getSlice()->getSPS()->isDepth () );118 bResPredAllowed = bResPredAllowed && ( pcCU->getSlice()->getSPS()->getViewId () );119 bResPredAllowed = bResPredAllowed && ( pcCU->getSlice()->getSPS()->getMultiviewResPredMode() );120 bResPredAllowed = bResPredAllowed && (!pcCU->isIntra ( uiAbsPartIdx ) );121 122 // check if supported123 if( bResPredAllowed )124 {125 bResPredAvailable = pcSubCU->getResidualSamples( uiPUIdx , false );126 }127 128 // read from bitstream129 if( bResPredAvailable )130 {131 #if LG_RESTRICTEDRESPRED_M24766132 Int iPUResiPredShift[4];133 pcCU->getPUResiPredShift(iPUResiPredShift, uiAbsPartIdx);134 if(iPUResiPredShift[0] >= 0 || iPUResiPredShift[1] >= 0 || iPUResiPredShift[2] >= 0 || iPUResiPredShift[3] >= 0 )135 #endif136 m_pcEntropyDecoderIf->parseResPredFlag( pcCU, bResPredFlag, uiAbsPartIdx, uiDepth );137 }138 139 // set data140 pcCU->setResPredAvailSubParts ( bResPredAvailable, uiAbsPartIdx, uiPUIdx, uiDepth );141 pcCU->setResPredFlagSubParts ( bResPredFlag, uiAbsPartIdx, uiPUIdx, uiDepth );142 }143 #endif144 145 110 Void TDecEntropy::decodeSplitFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ) 146 111 { -
branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder/TDecEntropy.h
r296 r325 72 72 virtual Void parseVPS ( TComVPS* pcVPS ) = 0; 73 73 #endif 74 #if HHI_MPI || OL_QTLIMIT_PREDCODING_B006874 #if HHI_MPI || H3D_QTL 75 75 virtual Void parseSPS ( TComSPS* pcSPS, Bool bIsDepth ) = 0; 76 76 #else … … 171 171 #endif 172 172 173 #if HHI_MPI || OL_QTLIMIT_PREDCODING_B0068173 #if HHI_MPI || H3D_QTL 174 174 Void decodeSPS ( TComSPS* pcSPS, Bool bIsDepth ) { m_pcEntropyDecoderIf->parseSPS(pcSPS, bIsDepth); } 175 175 #else … … 198 198 Void decodeMergeFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth, UInt uiPUIdx ); 199 199 Void decodeMergeIndex ( TComDataCU* pcSubCU, UInt uiPartIdx, UInt uiPartAddr, PartSize eCUMode, UChar* puhInterDirNeighbours, TComMvField* pcMvFieldNeighbours, UInt uiDepth ); 200 #if H3D_IVRP && !MTK_MDIVRP_C0138201 Void decodeResPredFlag ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth, TComDataCU* pcSubCU, UInt uiPUIdx );202 #endif203 200 Void decodePredMode ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); 204 201 Void decodePartSize ( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth ); -
branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder/TDecSbac.cpp
r296 r325 707 707 UInt uiSymbol; 708 708 709 #if OL_QTLIMIT_PREDCODING_B0068709 #if H3D_QTL 710 710 Bool bParseSplitFlag = true; 711 711 … … 715 715 Bool bIntraSliceDetect = (pcCU->getSlice()->getSliceType() == I_SLICE); 716 716 717 #if HHI_QTLPC_RAU_OFF_C0160718 717 Bool rapPic = (pcCU->getSlice()->getNalUnitType() == NAL_UNIT_CODED_SLICE_IDR || pcCU->getSlice()->getNalUnitType() == NAL_UNIT_CODED_SLICE_CRA); 719 718 if(bDepthMapDetect && !bIntraSliceDetect && !rapPic && sps->getUseQTLPC()) 720 #else721 if(bDepthMapDetect && !bIntraSliceDetect && sps->getUseQTLPC())722 #endif723 719 { 724 720 TComDataCU *pcTextureCU = pcTexture->getCU(pcCU->getAddr()); … … 733 729 DTRACE_CABAC_VL( g_nSymbolCounter++ ) 734 730 DTRACE_CABAC_T( "\tSplitFlag\n" ) 735 #if OL_QTLIMIT_PREDCODING_B0068731 #if H3D_QTL 736 732 } 737 733 else … … 755 751 PartSize eMode; 756 752 757 #if OL_QTLIMIT_PREDCODING_B0068753 #if H3D_QTL 758 754 Bool bParsePartSize = true; 759 755 TComSPS *sps = pcCU->getPic()->getSlice(0)->getSPS(); … … 762 758 Bool bIntraSliceDetect = (pcCU->getSlice()->getSliceType() == I_SLICE); 763 759 764 #if HHI_QTLPC_RAU_OFF_C0160765 760 Bool rapPic = (pcCU->getSlice()->getNalUnitType() == NAL_UNIT_CODED_SLICE_IDR || pcCU->getSlice()->getNalUnitType() == NAL_UNIT_CODED_SLICE_CRA); 766 761 if(bDepthMapDetect && !bIntraSliceDetect && !rapPic && sps->getUseQTLPC()) 767 #else768 if(bDepthMapDetect && !bIntraSliceDetect && sps->getUseQTLPC())769 #endif770 762 { 771 763 TComDataCU *pcTextureCU = pcTexture->getCU(pcCU->getAddr()); … … 781 773 if ( pcCU->isIntra( uiAbsPartIdx ) ) 782 774 { 783 #if OL_QTLIMIT_PREDCODING_B0068775 #if H3D_QTL 784 776 if(bParsePartSize) 785 777 { … … 791 783 } 792 784 eMode = uiSymbol ? SIZE_2Nx2N : SIZE_NxN; 793 #if OL_QTLIMIT_PREDCODING_B0068785 #if H3D_QTL 794 786 } 795 787 #endif … … 809 801 else 810 802 { 811 #if OL_QTLIMIT_PREDCODING_B0068803 #if H3D_QTL 812 804 if(bParsePartSize) 813 805 { … … 849 841 } 850 842 } 851 #if OL_QTLIMIT_PREDCODING_B0068843 #if H3D_QTL 852 844 } 853 845 #endif -
branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder/TDecSbac.h
r296 r325 88 88 Void parseVPS ( TComVPS* pcVPS ) {} 89 89 #endif 90 #if HHI_MPI || OL_QTLIMIT_PREDCODING_B006890 #if HHI_MPI || H3D_QTL 91 91 Void parseSPS ( TComSPS* pcSPS, Bool bIsDepth ) {} 92 92 #else -
branches/HTM-6.1-Cleanup/source/Lib/TLibDecoder/TDecTop.cpp
r313 r325 1257 1257 TComRPSList* rps = new TComRPSList(); 1258 1258 sps->setRPSList(rps); 1259 #if HHI_MPI || OL_QTLIMIT_PREDCODING_B00681259 #if HHI_MPI || H3D_QTL 1260 1260 m_cEntropyDecoder.decodeSPS( sps, m_isDepth ); 1261 1261 #else
Note: See TracChangeset for help on using the changeset viewer.