Changeset 139 in 3DVCSoftware for branches/HTM-4.0-Nokia/source/Lib
- Timestamp:
- 24 Sep 2012, 14:08:01 (12 years ago)
- Location:
- branches/HTM-4.0-Nokia/source/Lib
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-4.0-Nokia/source/Lib/TLibCommon/TComSlice.cpp
r101 r139 1441 1441 , m_bUseDMM (false) 1442 1442 #endif 1443 1444 #if FLEX_CODING_ORDER && HHI_DMM_PRED_TEX 1445 , m_bUseDMM34 (false) 1446 #endif 1447 1443 1448 { 1444 1449 // AMVP parameter -
branches/HTM-4.0-Nokia/source/Lib/TLibCommon/TComSlice.h
r101 r139 354 354 #endif 355 355 356 #if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER 357 Bool m_bUseDMM34; 358 #endif 359 356 360 #if DEPTH_MAP_GENERATION 357 361 UInt m_uiPredDepthMapGeneration; … … 382 386 Void setVPSId (Int i) { m_VPSId = i; } 383 387 #endif 384 Int getSPSId () { return m_SPSId; } 388 Int getSPSId () 389 { return m_SPSId; } 385 390 Void setSPSId (Int i) { m_SPSId = i; } 386 391 Int getProfileIdc () { return m_ProfileIdc; } … … 619 624 #endif 620 625 626 #if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER 627 Bool getUseDMM34() { return m_bUseDMM34; } 628 Void setUseDMM34( Bool b ) { m_bUseDMM34 = b; } 629 #endif 630 621 631 Void initMultiviewSPS ( UInt uiViewId, Int iViewOrderIdx = 0, UInt uiCamParPrecision = 0, Bool bCamParSlice = false, Int** aaiScale = 0, Int** aaiOffset = 0 ); 622 632 Void initMultiviewSPSDepth ( UInt uiViewId, Int iViewOrderIdx ); -
branches/HTM-4.0-Nokia/source/Lib/TLibCommon/TypeDef.h
r105 r139 46 46 #define FIX_DECODING_WO_WRITING 1 47 47 #define FIX_INIT_ROM 1 48 48 49 #define FIX_VIRT_DESTRUCTOR 1 50 51 52 53 54 #define FLEX_CODING_ORDER 1 55 #if FLEX_CODING_ORDER 56 #define DISABLE_FCO_FOR_VSO 1 57 #else 58 #define DISABLE_FCO_FOR_VSO 0 59 #endif 60 49 61 50 62 -
branches/HTM-4.0-Nokia/source/Lib/TLibDecoder/TDecTop.cpp
r77 r139 614 614 615 615 #if SKIPFRAME_BUGFIX 616 Bool TDecTop::xDecodeSlice(InputNALUnit &nalu, Int &iSkipFrame, Int iPOCLastDisplay ) 617 #else 618 Bool TDecTop::xDecodeSlice(InputNALUnit &nalu, Int iSkipFrame, Int iPOCLastDisplay ) 616 Bool TDecTop::xDecodeSlice(InputNALUnit &nalu, Int &iSkipFrame, Int iPOCLastDisplay 617 ) 618 #else 619 Bool TDecTop::xDecodeSlice(InputNALUnit &nalu, Int iSkipFrame, Int iPOCLastDisplay 620 ) 619 621 #endif 620 622 { … … 969 971 assert( m_tAppDecTop != NULL ); 970 972 TComPic * const pcTexturePic = m_isDepth ? m_tAppDecTop->getPicFromView( m_viewId, pcSlice->getPOC(), false ) : NULL; 973 974 #if FLEX_CODING_ORDER 975 if (pcTexturePic != NULL) 976 { 977 assert( !m_isDepth || pcTexturePic != NULL ); 978 pcSlice->setTexturePic( pcTexturePic ); 979 } 980 #else 971 981 assert( !m_isDepth || pcTexturePic != NULL ); 972 982 pcSlice->setTexturePic( pcTexturePic ); 983 #endif 984 985 986 // //original code 987 // assert( !m_isDepth || pcTexturePic != NULL ); 988 // pcSlice->setTexturePic( pcTexturePic ); 989 990 973 991 974 992 std::vector<TComPic*> apcInterViewRefPics = m_tAppDecTop->getInterViewRefPics( m_viewId, pcSlice->getPOC(), m_isDepth, pcSlice->getSPS() ); … … 1082 1100 } 1083 1101 1102 1103 1104 1105 1084 1106 #if VIDYO_VPS_INTEGRATION 1085 1107 Void TDecTop::xDecodeVPS() … … 1147 1169 } 1148 1170 1149 Bool TDecTop::decode(InputNALUnit& nalu, Int& iSkipFrame, Int& iPOCLastDisplay) 1171 Bool TDecTop::decode(InputNALUnit& nalu, Int& iSkipFrame, Int& iPOCLastDisplay 1172 1173 ) 1150 1174 { 1151 1175 // Initialize entropy decoder … … 1184 1208 case NAL_UNIT_CODED_SLICE_CDR: 1185 1209 #endif 1186 return xDecodeSlice(nalu, iSkipFrame, iPOCLastDisplay); 1210 return xDecodeSlice(nalu, iSkipFrame, iPOCLastDisplay 1211 ); 1187 1212 break; 1188 1213 default: -
branches/HTM-4.0-Nokia/source/Lib/TLibDecoder/TDecTop.h
r100 r139 111 111 TComList<TComPic*> m_cListPic; // Dynamic buffer 112 112 ParameterSetManagerDecoder m_parameterSetManagerDecoder; // storage for parameter sets 113 114 113 115 TComRPSList m_RPSList; 114 116 TComSlice* m_apcSlicePilot; 115 117 116 118 SEImessages *m_SEIs; ///< "all" SEI messages. If not NULL, we own the object. 117 119 … … 165 167 166 168 Void init( TAppDecTop* pcTAppDecTop, Bool bFirstInstance ); 167 Bool decode(InputNALUnit& nalu, Int& iSkipFrame, Int& iPOCLastDisplay); 169 Bool decode(InputNALUnit& nalu, Int& iSkipFrame, Int& iPOCLastDisplay 170 ); 168 171 169 172 Void deletePicBuffer(); … … 204 207 Void xActivateParameterSets(); 205 208 #if SKIPFRAME_BUGFIX 206 Bool xDecodeSlice(InputNALUnit &nalu, Int &iSkipFrame, Int iPOCLastDisplay); 209 Bool xDecodeSlice(InputNALUnit &nalu, Int &iSkipFrame, Int iPOCLastDisplay 210 ); 207 211 #else 208 Bool xDecodeSlice(InputNALUnit &nalu, Int iSkipFrame, Int iPOCLastDisplay); 212 Bool xDecodeSlice(InputNALUnit &nalu, Int iSkipFrame, Int iPOCLastDisplay, 213 ); 209 214 #endif 210 215 #if VIDYO_VPS_INTEGRATION -
branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncCfg.h
r100 r139 312 312 #endif 313 313 314 #if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER 315 Bool m_bUseDMM34; 316 #endif 317 314 318 Int m_iViewOrderIdx; 315 319 … … 799 803 #endif 800 804 805 #if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER 806 Void setUseDMM34( Bool b) { m_bUseDMM34 = b; } 807 Bool getUseDMM34() { return m_bUseDMM34; } 808 #endif 809 801 810 Void setViewOrderIdx ( Int i ) { m_iViewOrderIdx = i; } 802 811 Void setCamParPrecision ( UInt u ) { m_uiCamParPrecision = u; } -
branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncGOP.cpp
r102 r139 167 167 TEncSbac* pcSbacCoders = NULL; 168 168 TComOutputBitstream* pcSubstreamsOut = NULL; 169 int is_Depth; 169 170 170 171 { … … 255 256 pcSlice->setViewId( m_pcEncTop->getViewId() ); 256 257 pcSlice->setIsDepth( m_pcEncTop->getIsDepth() ); 257 258 is_Depth = m_pcEncTop->getIsDepth(); 258 259 m_pcEncTop->getSPS()->setDisInter4x4(m_pcEncTop->getDisInter4x4()); 259 260 pcSlice->setScalingList ( m_pcEncTop->getScalingList() ); … … 461 462 462 463 #if SAIT_VSO_EST_A0033 463 m_pcRdCost->setVideoRecPicYuv( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, true ) ); 464 465 { 466 Bool flag_rec; 467 468 flag_rec = ((m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, true) == NULL) ? false: true); 469 m_pcRdCost->setVideoRecPicYuv( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), false, flag_rec ) ); 464 470 m_pcRdCost->setDepthPicYuv ( m_pcEncTop->getEncTop()->getPicYuvFromView( pcSlice->getViewId(), pcSlice->getPOC(), true, false ) ); 465 #endif 466 467 471 } 472 #endif 468 473 } 469 474 #endif -
branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncSbac.cpp
r101 r139 964 964 #endif 965 965 #if HHI_DMM_PRED_TEX 966 967 #if FLEX_CODING_ORDER 968 if ( !pcCU->getSlice()->getSPS()->getUseDMM34() ) 969 { 970 assert( uiDir != DMM_WEDGE_PREDTEX_D_IDX ); 971 assert( uiDir != DMM_CONTOUR_PREDTEX_D_IDX ); 972 } 973 #endif 974 966 975 if( uiDir == DMM_WEDGE_PREDTEX_D_IDX ) { xCodeWedgePredTexDeltaInfo ( pcCU, uiAbsPartIdx ); } 967 976 if( uiDir == DMM_CONTOUR_PREDTEX_D_IDX ) { xCodeContourPredTexDeltaInfo( pcCU, uiAbsPartIdx ); } -
branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncSearch.cpp
r100 r139 2025 2025 #endif 2026 2026 #if HHI_DMM_PRED_TEX 2027 2028 #if FLEX_CODING_ORDER 2029 if ( pcCU->getSlice()->getSPS()->getUseDMM34() ) 2030 { 2031 #endif 2027 2032 UInt uiTexTabIdx = 0; 2028 2033 Int iTexDeltaDC1 = 0; … … 2048 2053 uiRdModeList[ numModesForFullRD++ ] = DMM_CONTOUR_PREDTEX_D_IDX; 2049 2054 } 2055 #if FLEX_CODING_ORDER 2056 } 2057 #endif 2050 2058 #endif 2051 2059 } … … 2083 2091 2084 2092 #if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX 2093 #if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER 2094 if( m_pcEncCfg->getIsDepth() && !predIntraLumaDMMAvailable( uiOrgMode, uiWidth, uiHeight, pcCU->getSlice()->getSPS()->getUseDMM34() ) 2095 #if LGE_EDGE_INTRA 2096 && uiOrgMode < EDGE_INTRA_IDX 2097 #endif 2098 ) 2099 2100 #else 2101 2085 2102 if( m_pcEncCfg->getIsDepth() && !predIntraLumaDMMAvailable( uiOrgMode, uiWidth, uiHeight ) 2086 2103 #if LGE_EDGE_INTRA … … 2088 2105 #endif 2089 2106 ) 2107 #endif 2090 2108 { 2091 2109 continue; … … 6014 6032 } 6015 6033 6016 #if HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX 6034 #if ((HHI_DMM_WEDGE_INTRA || HHI_DMM_PRED_TEX)&&FLEX_CODING_ORDER) 6035 Bool TEncSearch::predIntraLumaDMMAvailable( UInt uiMode, UInt uiWidth, UInt uiHeight, Bool bDMMAvailable34 ) 6036 #else 6017 6037 Bool TEncSearch::predIntraLumaDMMAvailable( UInt uiMode, UInt uiWidth, UInt uiHeight ) 6038 #endif 6018 6039 { 6019 6040 if( uiMode < NUM_INTRA_MODE ) return true; … … 6023 6044 #if HHI_DMM_WEDGE_INTRA 6024 6045 if( uiMode == DMM_WEDGE_FULL_IDX || 6025 6026 6027 6046 uiMode == DMM_WEDGE_FULL_D_IDX || 6047 uiMode == DMM_WEDGE_PREDDIR_IDX || 6048 uiMode == DMM_WEDGE_PREDDIR_D_IDX ) 6028 6049 { 6029 6050 if( (uiWidth != uiHeight) || (uiWidth < DMM_WEDGEMODEL_MIN_SIZE) || (uiWidth > DMM_WEDGEMODEL_MAX_SIZE) || ( ( uiMode == DMM_WEDGE_PREDDIR_IDX || uiMode == DMM_WEDGE_PREDDIR_D_IDX ) && uiWidth == 4 ) ) … … 6035 6056 #if HHI_DMM_PRED_TEX 6036 6057 if( uiMode == DMM_WEDGE_PREDTEX_IDX || 6037 6038 6039 6058 uiMode == DMM_WEDGE_PREDTEX_D_IDX || 6059 uiMode == DMM_CONTOUR_PREDTEX_IDX || 6060 uiMode == DMM_CONTOUR_PREDTEX_D_IDX ) 6040 6061 { 6041 6062 if( (uiWidth != uiHeight) || (uiWidth < DMM_WEDGEMODEL_MIN_SIZE) || (uiWidth > DMM_WEDGEMODEL_MAX_SIZE) || ( ( uiMode == DMM_CONTOUR_PREDTEX_IDX || uiMode == DMM_CONTOUR_PREDTEX_D_IDX ) && uiWidth == 4 ) ) … … 6043 6064 bDMMAvailable = false; 6044 6065 } 6066 6067 #if FLEX_CODING_ORDER 6068 if ( !bDMMAvailable34 ) 6069 { 6070 bDMMAvailable = false; 6071 } 6072 #endif 6073 6045 6074 } 6046 6075 #endif … … 6148 6177 xDeltaDCQuantScaleDown( pcCU, riDeltaDC2 ); 6149 6178 } 6150 #endif6151 #if HHI_DMM_WEDGE_INTRA 6179 //#endif 6180 #if HHI_DMM_WEDGE_INTRA 6152 6181 Void TEncSearch::findWedgeFullMinDist( TComDataCU* pcCU, 6153 6182 UInt uiAbsPtIdx, -
branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncSearch.h
r100 r139 315 315 Bool predIntraLumaDMMAvailable ( UInt uiMode, 316 316 UInt uiWidth, 317 UInt uiHeight ); 317 #if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER 318 UInt uiHeight, 319 Bool bDMMAvailable34 ); 320 #else 321 UInt uiHeight ); 322 #endif 323 318 324 Void xGetWedgeDeltaDCsMinDist ( TComWedgelet* pcWedgelet, 319 325 TComDataCU* pcCU, -
branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncSlice.cpp
r102 r139 729 729 { 730 730 731 Int frameWidth = m_pcCfg->getSourceWidth(); 731 732 #if 0 733 Int frameWidth = m_pcCfg->getSourceWidth(); 732 734 Pel* pVideoRec = m_pcRdCost->getVideoRecPicYuv()->getLumaAddr(); 733 735 Int iVideoRecStride = m_pcRdCost->getVideoRecPicYuv()->getStride(); … … 746 748 pDepthOrg += iDepthOrgStride; 747 749 } 750 #endif 748 751 } 749 752 #endif -
branches/HTM-4.0-Nokia/source/Lib/TLibEncoder/TEncTop.cpp
r105 r139 768 768 m_cSPS.setUseDMM( m_bUseDMM ); 769 769 #endif 770 771 #if HHI_DMM_PRED_TEX && FLEX_CODING_ORDER 772 m_cSPS.setUseDMM34( m_bUseDMM34 ); 773 #endif 774 775 770 776 #if HHI_MPI 771 777 m_cSPS.setUseMVI( m_bUseMVI );
Note: See TracChangeset for help on using the changeset viewer.