Changeset 1374 in 3DVCSoftware for branches/HTM-15.2-dev/source/Lib/TLibCommon
- Timestamp:
- 9 Nov 2015, 21:13:05 (9 years ago)
- Location:
- branches/HTM-15.2-dev/source/Lib/TLibCommon
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-15.2-dev/source/Lib/TLibCommon/CommonDef.h
r1373 r1374 171 171 #if NH_MV 172 172 static const Int MAX_NUM_LAYER_IDS = 63; 173 #if NH_MV_SEI174 173 static const Int MAX_NUM_SEIS = 1000; 175 #endif176 174 #else 177 175 static const Int MAX_NUM_LAYER_IDS = 64; … … 281 279 static const Int MAX_NUM_PICS_RPS = 16 ; 282 280 static const Int MAX_NUM_REF_LAYERS = 63 ; 283 #if NH_MV_SEI 281 284 282 static IntAry1d getRangeVec( Int rngStart, Int rngEnd ) { IntAry1d rng; for (Int i = rngStart; i<=rngEnd; i++) rng.push_back(i); return rng; }; 285 283 static const IntAry1d IDR_NAL_UNIT_TYPES = getRangeVec( NAL_UNIT_CODED_SLICE_IDR_W_RADL, NAL_UNIT_CODED_SLICE_IDR_N_LP ); 286 284 static const IntAry1d IRAP_NAL_UNIT_TYPES = getRangeVec( NAL_UNIT_CODED_SLICE_BLA_W_LP , NAL_UNIT_CODED_SLICE_CRA ); 287 288 #endif289 285 #endif 290 286 -
branches/HTM-15.2-dev/source/Lib/TLibCommon/SEI.cpp
r1362 r1374 38 38 #include "CommonDef.h" 39 39 #include "SEI.h" 40 #if NH_MV _SEI40 #if NH_MV 41 41 #include "TComSlice.h" 42 42 #endif … … 178 178 } 179 179 180 #if NH_MV _SEI180 #if NH_MV 181 181 SEI::SEI() 182 182 { … … 224 224 case SEI::CHROMA_SAMPLING_FILTER_HINT: return new SEIChromaSamplingFilterHint 225 225 #endif 226 #if NH_MV_SEI227 #if NH_MV_LAYERS_NOT_PRESENT_SEI228 226 case SEI::LAYERS_NOT_PRESENT : return new SEILayersNotPresent; 229 #endif230 227 case SEI::INTER_LAYER_CONSTRAINED_TILE_SETS : return new SEIInterLayerConstrainedTileSets; 231 228 #if NH_MV_SEI_TBD … … 241 238 #endif 242 239 case SEI::THREE_DIMENSIONAL_REFERENCE_DISPLAYS_INFO: return new SEIThreeDimensionalReferenceDisplaysInfo; 243 #if SEI_DRI_F0169244 240 case SEI::DEPTH_REPRESENTATION_INFO : return new SEIDepthRepresentationInfo; 245 #endif246 241 case SEI::MULTIVIEW_SCENE_INFO : return new SEIMultiviewSceneInfo; 247 242 case SEI::MULTIVIEW_ACQUISITION_INFO : return new SEIMultiviewAcquisitionInfo; … … 249 244 #if NH_3D 250 245 case SEI::ALTERNATIVE_DEPTH_INFO : return new SEIAlternativeDepthInfo; 251 #endif252 246 #endif 253 247 default: assert( false ); return NULL; … … 340 334 } 341 335 342 343 #if NH_MV_LAYERS_NOT_PRESENT_SEI344 336 Void SEILayersNotPresent::setupFromCfgFile(const TChar* cfgFile) 345 337 { … … 399 391 return wrongConfig; 400 392 }; 401 #endif 393 402 394 403 395 … … 1019 1011 }; 1020 1012 1021 #if SEI_DRI_F01691022 1013 Void SEIDepthRepresentationInfo::setupFromSlice ( const TComSlice* slice ) 1023 1014 { … … 1196 1187 return wrongConfig; 1197 1188 } 1198 #endif 1189 1199 1190 1200 1191 Void SEIMultiviewSceneInfo::setupFromCfgFile(const TChar* cfgFile) -
branches/HTM-15.2-dev/source/Lib/TLibCommon/SEI.h
r1362 r1374 44 44 45 45 46 #if NH_MV _SEI46 #if NH_MV 47 47 #include "TAppCommon/program_options_lite.h" 48 48 using namespace std; … … 53 53 //! \{ 54 54 class TComSPS; 55 #if NH_MV _SEI55 #if NH_MV 56 56 class TComSlice; 57 57 class SEIScalableNesting; … … 97 97 KNEE_FUNCTION_INFO = 141, 98 98 COLOUR_REMAPPING_INFO = 142, 99 #if NH_MV_SEI100 99 DEINTERLACED_FIELD_IDENTIFICATION = 143, 101 100 LAYERS_NOT_PRESENT = 160, … … 116 115 ,ALTERNATIVE_DEPTH_INFO = 181 117 116 #endif 118 #endif119 117 120 118 }; … … 133 131 virtual PayloadType payloadType() const = 0; 134 132 135 #if NH_MV _SEI133 #if NH_MV 136 134 virtual SEI* getCopy( ) const; 137 135 static SEI* getNewSEIMessage ( SEI::PayloadType payloadType ); … … 551 549 }; 552 550 553 #if NH_MV554 #if !NH_MV_SEI555 class SEISubBitstreamProperty : public SEI556 {557 public:558 PayloadType payloadType() const { return SUB_BITSTREAM_PROPERTY; }559 560 SEISubBitstreamProperty(): m_activeVpsId(-1), m_numAdditionalSubStreams(0) {}561 virtual ~SEISubBitstreamProperty() {}562 563 Int m_activeVpsId;564 Int m_numAdditionalSubStreams;565 std::vector<Int> m_subBitstreamMode;566 std::vector<Int> m_outputLayerSetIdxToVps;567 std::vector<Int> m_highestSublayerId;568 std::vector<Int> m_avgBitRate;569 std::vector<Int> m_maxBitRate;570 };571 #endif572 #endif573 574 551 typedef std::list<SEI*> SEIMessages; 575 552 … … 678 655 679 656 }; 680 #if NH_MV_SEI 681 #if NH_MV_LAYERS_NOT_PRESENT_SEI 657 #if NH_MV 682 658 class SEILayersNotPresent : public SEI 683 659 { … … 700 676 } 701 677 }; 702 #endif703 678 704 679 class SEIInterLayerConstrainedTileSets : public SEI … … 943 918 }; 944 919 945 #if SEI_DRI_F0169946 920 class SEIDepthRepresentationInfo : public SEI 947 921 { … … 1012 986 IntAry2d m_depth_nonlinear_representation_model; 1013 987 }; 1014 #endif 988 1015 989 1016 990 class SEIMultiviewSceneInfo : public SEI -
branches/HTM-15.2-dev/source/Lib/TLibCommon/TComBitStream.cpp
r1360 r1374 260 260 m_numBitsRead += uiNumberOfBits; 261 261 262 #if ENC_DEC_TRACE && H_MV_ENC_DEC_TRAC262 #if ENC_DEC_TRACE && NH_MV_ENC_DEC_TRAC 263 263 if ( g_traceBitsRead ) 264 264 { -
branches/HTM-15.2-dev/source/Lib/TLibCommon/TComDataCU.cpp
r1362 r1374 3097 3097 3098 3098 3099 #if ENC_DEC_TRACE && H_MV_ENC_DEC_TRAC3099 #if ENC_DEC_TRACE && NH_MV_ENC_DEC_TRAC 3100 3100 if ( g_traceMergeCandListConst ) 3101 3101 { … … 3176 3176 } 3177 3177 3178 #if ENC_DEC_TRACE && H_MV_ENC_DEC_TRAC3178 #if ENC_DEC_TRACE && NH_MV_ENC_DEC_TRAC 3179 3179 if ( g_traceMergeCandListConst ) 3180 3180 { … … 5070 5070 #if NH_3D_NBDV_REF 5071 5071 TComPic* picDepth = NULL; 5072 #if H_3D_FCO _VSP_DONBDV_E01635072 #if H_3D_FCO 5073 5073 picDepth = getSlice()->getIvPic(true, getSlice()->getViewIndex() ); 5074 5074 if ( picDepth->getPicYuvRec() != NULL ) … … 5136 5136 pDInfo->m_aVIdxCan = cIDVInfo.m_aVIdxCan[iList][ curPos ]; 5137 5137 #if NH_3D_NBDV_REF 5138 #if H_3D_FCO _VSP_DONBDV_E01635138 #if H_3D_FCO 5139 5139 TComPic* picDepth = NULL; 5140 5140 … … 5175 5175 #if NH_3D_NBDV_REF 5176 5176 TComPic* picDepth = NULL; 5177 #if H_3D_FCO _VSP_DONBDV_E01635177 #if H_3D_FCO 5178 5178 picDepth = getSlice()->getIvPic(true, getSlice()->getViewIndex() ); 5179 5179 if ( picDepth->getPicYuvRec() != NULL ) … … 5269 5269 TComPic* picDepth = NULL; 5270 5270 assert(getSlice()->getRefPic(eRefPicList, refId)->getPOC() == getSlice()->getPOC()); 5271 #if H_3D_FCO _VSP_DONBDV_E01635271 #if H_3D_FCO 5272 5272 picDepth = getSlice()->getIvPic(true, getSlice()->getViewIndex() ); 5273 5273 if ( picDepth->getPicYuvRec() != NULL ) … … 5403 5403 } 5404 5404 5405 #if NH_3D_FIX_NBDV_COL5406 5405 // The picture pColCU->getSlice()->getRefPic(eColRefPicList, iColRefIdx) might not be in DPB anymore 5407 5406 // So don't access it directly. 5408 5407 iColRefViewIdx = pColCU->getSlice()->getVPS()->getViewOrderIdx( pColCU->getSlice()->getRefLayerId( eColRefPicList, iColRefIdx ) ); 5409 #else5410 iColRefViewIdx = pColCU->getSlice()->getRefPic(eColRefPicList, iColRefIdx)->getViewIndex();5411 #endif5412 5408 5413 5409 … … 6002 5998 Int depthRefViewIdx = pcCU->getDvInfo(partAddr).m_aVIdxCan; 6003 5999 6004 #if H_3D_FCO _VSP_DONBDV_E01636000 #if H_3D_FCO 6005 6001 TComPic* pRefPicBaseDepth = 0; 6006 6002 Bool bIsCurrDepthCoded = false; … … 6037 6033 pcCU->clipMv(cDv); 6038 6034 6039 #if H_3D_FCO _VSP_DONBDV_E01636035 #if H_3D_FCO 6040 6036 if ( bIsCurrDepthCoded ) 6041 6037 { -
branches/HTM-15.2-dev/source/Lib/TLibCommon/TComPic.cpp
r1373 r1374 449 449 m_abTIVRINCurrRL[curCandPic][iColRefDir][iColRefIdx] = false; 450 450 Int iColViewIdx = pcCandColSlice->getViewIndex(); 451 #if H_3D_FIX_ARP_CHECK_NOT_IN_DPB452 451 // The picture pcCandColSlice->getRefPic((RefPicList)iColRefDir, iColRefIdx) might not be in DPB anymore 453 452 // So don't access it directly. 454 453 Int iColRefViewIdx = pcCandColSlice->getVPS()->getViewOrderIdx( pcCandColSlice->getRefLayerId( (RefPicList)iColRefDir, iColRefIdx ) ); 455 #else456 Int iColRefViewIdx = pcCandColSlice->getRefPic((RefPicList)iColRefDir, iColRefIdx)->getViewIndex();457 #endif458 454 if(iColViewIdx == iColRefViewIdx) 459 455 { -
branches/HTM-15.2-dev/source/Lib/TLibCommon/TComPrediction.cpp
r1365 r1374 562 562 Int RefPOCL0 = pcCU->getSlice()->getRefPic(REF_PIC_LIST_0, pcCU->getCUMvField(REF_PIC_LIST_0)->getRefIdx(PartAddr))->getPOC(); 563 563 Int RefPOCL1 = pcCU->getSlice()->getRefPic(REF_PIC_LIST_1, pcCU->getCUMvField(REF_PIC_LIST_1)->getRefIdx(PartAddr))->getPOC(); 564 #if NH_MV_FIX_TICKET_106565 564 #if NH_MV 566 565 Int layerIdL0 = pcCU->getSlice()->getRefPic(REF_PIC_LIST_0, pcCU->getCUMvField(REF_PIC_LIST_0)->getRefIdx(PartAddr))->getLayerId(); … … 573 572 #else 574 573 if(RefPOCL0 == RefPOCL1 && pcCU->getCUMvField(REF_PIC_LIST_0)->getMv(PartAddr) == pcCU->getCUMvField(REF_PIC_LIST_1)->getMv(PartAddr)) 575 #endif576 #else577 #if NH_3D_ARP578 if(!pcCU->getARPW(PartAddr) && RefPOCL0 == RefPOCL1 && pcCU->getCUMvField(REF_PIC_LIST_0)->getMv(PartAddr) == pcCU->getCUMvField(REF_PIC_LIST_1)->getMv(PartAddr))579 #else580 if(RefPOCL0 == RefPOCL1 && pcCU->getCUMvField(REF_PIC_LIST_0)->getMv(PartAddr) == pcCU->getCUMvField(REF_PIC_LIST_1)->getMv(PartAddr))581 #endif582 574 #endif 583 575 { … … 1314 1306 pcCU->clipMv(cMv); 1315 1307 1316 #if ENC_DEC_TRACE && H_MV_ENC_DEC_TRAC1308 #if ENC_DEC_TRACE && NH_MV_ENC_DEC_TRAC 1317 1309 if ( g_traceMotionInfoBeforUniPred ) 1318 1310 { -
branches/HTM-15.2-dev/source/Lib/TLibCommon/TComRom.cpp
r1370 r1374 221 221 } 222 222 #if NH_MV 223 #if H_MV_HLS_PTL_LIMITS223 #if NH_MV_HLS_PTL_LIMITS 224 224 g_generalTierAndLevelLimits[ Level::LEVEL1 ] = TComGeneralTierAndLevelLimits( 36864, 350, MIN_INT, 16, 1, 1 ); 225 225 g_generalTierAndLevelLimits[ Level::LEVEL2 ] = TComGeneralTierAndLevelLimits( 122880, 1500, MIN_INT, 16, 1, 1 ); … … 540 540 Bool g_bJustDoIt = false; 541 541 UInt64 g_nSymbolCounter = 0; 542 #if H_MV_ENC_DEC_TRAC542 #if NH_MV_ENC_DEC_TRAC 543 543 Bool g_traceCU = false; 544 544 Bool g_tracePU = false; … … 671 671 const UInt g_scalingListSize [SCALING_LIST_SIZE_NUM] = {16,64,256,1024}; 672 672 const UInt g_scalingListSizeX [SCALING_LIST_SIZE_NUM] = { 4, 8, 16, 32}; 673 #if H_MV_ENC_DEC_TRAC673 #if NH_MV_ENC_DEC_TRAC 674 674 #if ENC_DEC_TRACE 675 675 Void tracePSHeader( const TChar* psName, Int layerId ) -
branches/HTM-15.2-dev/source/Lib/TLibCommon/TComRom.h
r1360 r1374 112 112 // ==================================================================================================================== 113 113 extern const TMatrixCoeff g_as_DST_MAT_4 [TRANSFORM_NUMBER_OF_DIRECTIONS][4][4]; 114 #if H_MV_HLS_PTL_LIMITS114 #if NH_MV_HLS_PTL_LIMITS 115 115 class TComGeneralTierAndLevelLimits 116 116 { … … 172 172 #define DTRACE_CABAC_R( x,y ) if ( ( g_nSymbolCounter >= COUNTER_START && g_nSymbolCounter <= COUNTER_END )|| g_bJustDoIt ) fprintf( g_hTrace, x, y ); 173 173 #define DTRACE_CABAC_N if ( ( g_nSymbolCounter >= COUNTER_START && g_nSymbolCounter <= COUNTER_END )|| g_bJustDoIt ) fprintf( g_hTrace, "\n" ); 174 #if H_MV_ENC_DEC_TRAC174 #if NH_MV_ENC_DEC_TRAC 175 175 extern Bool g_traceCU; 176 176 extern Bool g_tracePU ; -
branches/HTM-15.2-dev/source/Lib/TLibCommon/TComSlice.cpp
r1373 r1374 3672 3672 } 3673 3673 tempRefPicInListsFlag = (getFirstTRefIdx(REF_PIC_LIST_0) >= 0 || getFirstTRefIdx(REF_PIC_LIST_1) >= 0) && getDefaultRefViewIdxAvailableFlag(); 3674 m_nARPStepNum = tempRefPicInListsFlag ? H_3D_ARP_WFNR: 0;3674 m_nARPStepNum = tempRefPicInListsFlag ? 3 : 0; 3675 3675 } 3676 3676 … … 3935 3935 { 3936 3936 Int iInVoi = vps->getVoiInVps( i ); 3937 #if ENC_DEC_TRACE && H_MV_ENC_DEC_TRAC3937 #if ENC_DEC_TRACE && NH_MV_ENC_DEC_TRAC 3938 3938 if ( g_traceCameraParameters ) 3939 3939 { … … 4335 4335 4336 4336 4337 #if H_3D_OUTPUT_ACTIVE_TOOLS4337 #if NH_3D_OUTPUT_ACTIVE_TOOLS 4338 4338 std::cout << "Layer: :" << getLayerId() << std::endl; 4339 4339 std::cout << "DepthFlag: :" << getIsDepth() << std::endl; -
branches/HTM-15.2-dev/source/Lib/TLibCommon/TComYuv.cpp
r1313 r1374 124 124 { 125 125 ::memcpy( pDst, pSrc, sizeof(Pel)*iWidth); 126 #if ENC_DEC_TRACE && H_MV_ENC_DEC_TRAC126 #if ENC_DEC_TRACE && NH_MV_ENC_DEC_TRAC 127 127 if ( g_traceCopyBack && compID == COMPONENT_Y) 128 128 { -
branches/HTM-15.2-dev/source/Lib/TLibCommon/TypeDef.h
r1373 r1374 64 64 ///////////////////////////////////////////////////////////////////////////////////////// 65 65 #if NH_MV 66 #define H_MV_HLS_PTL_LIMITS 0 67 #define NH_MV_SEI_TBD 0 68 #define NH_MV_SEI 1 69 #define NH_MV_FIX_TICKET_106 1 // Identical motion check. 66 67 // Things that needs to be fixed in the Specification: 70 68 #define NH_MV_FIX_NO_REF_PICS_CHECK 1 // !!SPEC!! 71 69 #define NH_MV_FIX_INIT_NUM_ACTIVE_REF_LAYER_PICS 1 // Derivation of NumActiveRefLayerPIcs. !!SPEC!! 72 70 #define NH_MV_FIX_NUM_POC_TOTAL_CUR 1 // Derivation of NumPocTotalCur for IDR pictures. !!SPEC!! 73 #define NH_MV_LAYERS_NOT_PRESENT_SEI 1 // Layers not present SEI message JCTMV-M0043 74 #if NH_MV_SEI 75 #define SEI_DRI_F0169 1 76 #endif 77 #endif 78 #if NH_3D 79 #define H_3D_FIX_ARP_CHECK_NOT_IN_DPB 1 80 #define NH_3D_FIX_NBDV_COL 1 71 72 // To be done 73 #define NH_MV_HLS_PTL_LIMITS 0 74 #define NH_MV_SEI_TBD 0 81 75 #endif 82 76 ///////////////////////////////////////////////////////////////////////////////////////// … … 84 78 ///////////////////////////////////////////////////////////////////////////////////////// 85 79 #if NH_MV 86 #define H_MV_ENC_DEC_TRAC 1 //< CU/PU level tracking80 #define NH_MV_ENC_DEC_TRAC 1 //< CU/PU level tracking 87 81 #if NH_3D 88 82 #define NH_3D_INTEGER_MV_DEPTH 1 … … 277 271 // MTK_FAST_TEXTURE_ENCODING_E0173 278 272 //HLS 279 // HHI_DEPENDENCY_SIGNALLING_I1_J0107 280 // HHI_TOOL_PARAMETERS_I2_J0107 281 // HHI_VPS_3D_EXTENSION_I3_J0107 282 // HHI_INTER_COMP_PRED_K0052 283 // HHI_RES_PRED_K0052 284 // HHI_CAM_PARA_K0052 285 // H_3D_DIRECT_DEP_TYPE 273 // HHI_DEPENDENCY_SIGNALLING_I1_J0107 274 // HHI_TOOL_PARAMETERS_I2_J0107 275 // HHI_VPS_3D_EXTENSION_I3_J0107 276 // HHI_INTER_COMP_PRED_K0052 277 // HHI_RES_PRED_K0052 278 // HHI_CAM_PARA_K0052 279 // H_3D_DIRECT_DEP_TYPE 280 281 #endif // NH_3D 282 283 #if NH_MV 284 //////////////////////// 285 /// Consider Removal 286 //////////////////////// 287 286 288 // Rate Control 287 289 #define KWU_FIX_URQ 0 288 290 #define KWU_RC_VIEWRC_E0227 0 ///< JCT3V-E0227, view-wise target bitrate allocation 289 291 #define KWU_RC_MADPRED_E0227 0 ///< JCT3V-E0227, inter-view MAD prediction 290 #endif // NH_3D 292 293 #define NH_MV_HLS_PTL_LIMITS 0 294 295 #if NH_3D 296 // Unclear Fix 297 #define H_3D_PPS_FIX_DEPTH 0 298 #endif 299 #endif 291 300 ///////////////////////////////////////////////////////////////////////////////////////// 292 301 /////////////////////////////////// DERIVED DEFINES /////////////////////////////////// 293 302 ///////////////////////////////////////////////////////////////////////////////////////// 294 303 #if NH_3D 295 #define H_3D_OUTPUT_ACTIVE_TOOLS 0296 #define H_3D_REN_MAX_DEV_OUT 0304 #define NH_3D_OUTPUT_ACTIVE_TOOLS 0 305 #define NH_3D_REN_MAX_DEV_OUT 0 297 306 #endif 298 307 ///// ***** VIEW SYNTHESIS OPTIMIZAION ********* … … 309 318 #define DVFROM_ABOVE 1 310 319 #define IDV_CANDS 2 311 #endif312 ///// ***** ADVANCED INTERVIEW RESIDUAL PREDICTION *********313 #if NH_3D_ARP314 #define H_3D_ARP_WFNR 3315 320 #endif 316 321 ///////////////////////////////////////////////////////////////////////////////////// … … 327 332 #if NH_3D_DBBP 328 333 #define DBBP_INVALID_SHORT (-4) 329 #define DBBP_PACK_MODE SIZE_2NxN 330 #endif 331 ///// ***** FCO ********* 332 #if H_3D_FCO 333 #define H_3D_FCO_VSP_DONBDV_E0163 1 // Adaptive depth reference for flexible coding order 334 #else 335 #define H_3D_FCO_VSP_DONBDV_E0163 0 // Adaptive depth reference for flexible coding order 336 #endif 337 #if H_3D 338 #define PPS_FIX_DEPTH 1 339 #endif 340 ///////////////////////////////////////////////////////////////////////////////// 341 /////////////////////////////////// MV_HEVC HLS ////////////////////////////// 342 ///////////////////////////////////////////////////////////////////////////////// 343 // TBD: Check if integration is necessary. 344 #define H_MV_HLS_PTL_LIMITS 0 334 #endif 335 345 336 ///////////////////////////////////////////////////////////////////////////////////////// 346 337 /////////////////////////////////// HM RELATED DEFINES //////////////////////////////// … … 497 488 typedef std::vector< std::string > StringAry1d; 498 489 typedef std::vector< StringAry1d > StringAry2d; 499 typedef std::vector< std::string > StringAry1d; 500 typedef std::vector< StringAry1d > StringAry2d; 490 501 491 typedef std::vector< Int > IntAry1d; 502 492 typedef std::vector< IntAry1d > IntAry2d; … … 504 494 typedef std::vector< IntAry3d > IntAry4d; 505 495 typedef std::vector< IntAry4d > IntAry5d; 496 506 497 typedef std::vector< Bool > BoolAry1d; 507 498 typedef std::vector< BoolAry1d > BoolAry2d;
Note: See TracChangeset for help on using the changeset viewer.