Changeset 262 in 3DVCSoftware for branches/HTM-5.1-dev2-Sony/source/Lib
- Timestamp:
- 7 Feb 2013, 06:01:05 (12 years ago)
- Location:
- branches/HTM-5.1-dev2-Sony/source/Lib
- Files:
-
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-5.1-dev2-Sony/source/Lib/TLibCommon/TComDataCU.cpp
r254 r262 6901 6901 RefPicList eColRefPicList; 6902 6902 Int iColPOC, iColRefPOC, iCurrPOC, iCurrRefPOC, iScale; 6903 #if SONY_COLPIC_AVAILABILITY6904 #if QC_IV_AS_LT_B00466905 Int iColViewOrderIdx, iCurrViewOrderIdx, iCurrRefViewOrderIdx;6906 #else6907 Int iColViewOrderIdx, iColRefViewOrderIdx, iCurrViewOrderIdx, iCurrRefViewOrderIdx;6908 #endif6909 #endif6910 6903 TComMv cColMv; 6911 6912 #if SONY_COLPIC_AVAILABILITY 6913 iCurrViewOrderIdx = m_pcSlice->getViewOrderIdx(); 6914 iCurrRefViewOrderIdx = m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getViewOrderIdx(); 6915 #endif 6904 #if INTER_VIEW_VECTOR_SCALING_C0115 6905 Int iColViewId, iColRefViewId, iCurrViewId, iCurrRefViewId; 6906 #endif 6907 6916 6908 // use coldir. 6917 6909 #if COLLOCATED_REF_IDX … … 6928 6920 iCurrRefPOC = m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getPOC(); 6929 6921 iColPOC = pColCU->getSlice()->getPOC(); 6930 #if SONY_COLPIC_AVAILABILITY 6931 iColViewOrderIdx = pColCU->getSlice()->getViewOrderIdx(); 6922 #if INTER_VIEW_VECTOR_SCALING_C0115 6923 iCurrViewId = m_pcSlice->getViewOrderIdx(); // will be changed to view_id 6924 iCurrRefViewId = m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getViewOrderIdx(); // will be changed to view_id 6925 iColViewId = pColCU->getSlice()->getViewOrderIdx(); // will be changed to view_id 6932 6926 #endif 6933 6927 … … 6937 6931 } 6938 6932 6939 #if ! SONY_COLPIC_AVAILABILITY&!QC_IV_AS_LT_B00466933 #if !INTER_VIEW_VECTOR_SCALING_C0115&!QC_IV_AS_LT_B0046 6940 6934 if( m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getViewId() != m_pcSlice->getViewId() ) 6941 6935 return false; … … 6964 6958 // Scale the vector. 6965 6959 iColRefPOC = pColCU->getSlice()->getRefPOC(eColRefPicList, iColRefIdx); 6966 6960 #if INTER_VIEW_VECTOR_SCALING_C0115 6961 iColRefViewId = pColCU->getSlice()->getRefPic( eColRefPicList, pColCU->getCUMvField(eColRefPicList)->getRefIdx(uiAbsPartAddr))->getViewOrderIdx(); // will be changed to view_id 6962 #endif 6967 6963 #if !QC_IV_AS_LT_B0046 6968 #if SONY_COLPIC_AVAILABILITY6969 iColRefViewOrderIdx = pColCU->getSlice()->getRefPic( eColRefPicList, pColCU->getCUMvField(eColRefPicList)->getRefIdx(uiAbsPartAddr))->getViewOrderIdx();6970 #else6971 6964 if( pColCU->getSlice()->getRefViewId( eColRefPicList, iColRefIdx ) != pColCU->getSlice()->getViewId() ) 6972 6965 { 6973 6966 return false; 6974 6967 } 6975 #endif6976 6968 #else 6977 6969 Bool bIsCurrRefLongTerm = m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getIsLongTerm(); … … 6990 6982 bIsCurrRefLongTerm = m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getIsLongTerm(); 6991 6983 iCurrRefPOC = m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getPOC(); 6992 #if SONY_COLPIC_AVAILABILITY6993 iCurrRefView OrderIdx = m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getViewOrderIdx();6984 #if INTER_VIEW_VECTOR_SCALING_C0115 6985 iCurrRefViewId = m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getViewOrderIdx(); // will be changed to view_id 6994 6986 #endif 6995 6987 } … … 7024 7016 } 7025 7017 }else 7026 #if QC_MVHEVC_B0046 7027 rcMv = cColMv; //inter-view 7028 #else 7029 { 7030 #if SONY_COLPIC_AVAILABILITY 7031 Int iColRefViewOrderIdx = pColCU->getSlice()->getRefPic( eColRefPicList, pColCU->getCUMvField(eColRefPicList)->getRefIdx(uiAbsPartAddr))->getViewOrderIdx(); 7032 iScale = xGetDistScaleFactor(iCurrViewOrderIdx, iCurrRefViewOrderIdx, iColViewOrderIdx, iColRefViewOrderIdx); 7033 if ( iScale == 4096 ) 7034 { 7035 rcMv = cColMv; 7036 } 7037 else 7038 { 7039 rcMv = cColMv.scaleMv( iScale ); 7040 } 7041 #else 7042 return false; 7043 #endif 7044 } 7045 #endif 7046 } 7047 #else 7048 #if SONY_COLPIC_AVAILABILITY 7049 iScale = 0; 7050 iCurrRefViewOrderIdx = m_pcSlice->getRefPic(eRefPicList, riRefIdx)->getViewOrderIdx(); 7051 if((iColPOC != iColRefPOC)&&(iCurrPOC != iCurrRefPOC)) 7052 iScale = xGetDistScaleFactor(iCurrPOC, iCurrRefPOC, iColPOC, iColRefPOC); 7053 else if((iColPOC == iColRefPOC)&&(iCurrPOC == iCurrRefPOC)) 7054 iScale = xGetDistScaleFactor(iCurrViewOrderIdx, iCurrRefViewOrderIdx, iColViewOrderIdx, iColRefViewOrderIdx); 7055 else 7056 return false; 7057 7058 #else 7059 iScale = xGetDistScaleFactor(iCurrPOC, iCurrRefPOC, iColPOC, iColRefPOC); 7060 #endif 7061 if ( iScale == 4096 ) 7062 { 7063 rcMv = cColMv; 7064 } 7065 else 7066 { 7067 rcMv = cColMv.scaleMv( iScale ); 7068 } 7069 #endif 7018 #if INTER_VIEW_VECTOR_SCALING_C0115 7019 { 7020 if((iCurrPOC == iCurrRefPOC) && m_pcSlice->getIVScalingFlag()) // inter-view & inter-view 7021 iScale = xGetDistScaleFactor( iCurrViewId, iCurrRefViewId, iColViewId, iColRefViewId ); 7022 else 7023 iScale = 4096; // inter & inter 7024 if ( iScale == 4096 ) 7025 { 7026 rcMv = cColMv; 7027 } 7028 else 7029 { 7030 rcMv = cColMv.scaleMv( iScale ); 7031 } 7032 } 7033 #else 7034 rcMv = cColMv; //inter-view 7035 #endif 7036 } 7037 #endif 7038 7070 7039 return true; 7071 7040 } -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibCommon/TComPic.cpp
r210 r262 76 76 m_pcUsedPelsMap = NULL; 77 77 #endif 78 #if SONY_COLPIC_AVAILABILITY79 m_iViewOrderIdx = 0; 78 #if INTER_VIEW_VECTOR_SCALING_C0115 79 m_iViewOrderIdx = 0; // will be changed to view_id 80 80 #endif 81 81 m_aaiCodedScale = 0; -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibCommon/TComPic.h
r210 r262 112 112 TComPicYuv* m_pcUsedPelsMap; 113 113 #endif 114 #if SONY_COLPIC_AVAILABILITY115 Int m_iViewOrderIdx; 114 #if INTER_VIEW_VECTOR_SCALING_C0115 115 Int m_iViewOrderIdx; // will be changed to view_id 116 116 #endif 117 117 Int** m_aaiCodedScale; … … 188 188 #endif 189 189 190 #if SONY_COLPIC_AVAILABILITY191 Void setViewOrderIdx(Int i) { m_iViewOrderIdx = i; } 192 Int getViewOrderIdx() { return m_iViewOrderIdx; } 190 #if INTER_VIEW_VECTOR_SCALING_C0115 191 Void setViewOrderIdx(Int i) { m_iViewOrderIdx = i; } // will be changed to view_id 192 Int getViewOrderIdx() { return m_iViewOrderIdx; } // will be changed to view_id 193 193 #endif 194 194 -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibCommon/TComSlice.cpp
r237 r262 113 113 , m_numEntryPointOffsets ( 0 ) 114 114 #endif 115 #if SONY_COLPIC_AVAILABILITY116 , m_iViewOrderIdx ( 0 )117 #endif118 115 #if LGE_ILLUCOMP_B0045 119 116 , m_bApplyIC ( false ) 117 #endif 118 #if INTER_VIEW_VECTOR_SCALING_C0115 119 , m_bIVScalingFlag (false) 120 , m_iViewOrderIdx ( 0 ) // will be changed to view_id 120 121 #endif 121 122 { … … 722 723 m_iPOC = pSrc->m_iPOC; 723 724 m_viewId = pSrc->m_viewId; 724 #if SONY_COLPIC_AVAILABILITY 725 m_iViewOrderIdx = pSrc->m_iViewOrderIdx; 725 #if INTER_VIEW_VECTOR_SCALING_C0115 726 m_iViewOrderIdx = pSrc->m_iViewOrderIdx;// will be changed to view_id 727 m_bIVScalingFlag = pSrc->m_bIVScalingFlag; 726 728 #endif 727 729 m_eNalUnitType = pSrc->m_eNalUnitType; -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibCommon/TComSlice.h
r237 r262 179 179 UInt m_uiMaxDecPicBuffering[MAX_TLAYER]; 180 180 UInt m_uiMaxLatencyIncrease[MAX_TLAYER]; 181 181 #if INTER_VIEW_VECTOR_SCALING_C0115 182 Bool m_bIVScalingFlag; 183 #endif 182 184 public: 183 185 TComVPS(); … … 213 215 Void setDependentLayer(UInt v, UInt layer) { m_uiDependentLayer[layer] = v; } 214 216 UInt getDependentLayer(UInt layer) { return m_uiDependentLayer[layer]; } 217 #endif 218 #if INTER_VIEW_VECTOR_SCALING_C0115 219 Bool getIVScalingFlag( ) { return m_bIVScalingFlag; } 220 Void setIVScalingFlag(Bool b) { m_bIVScalingFlag = b; } 215 221 #endif 216 222 Void setNumReorderPics(UInt v, UInt tLayer) { m_numReorderPics[tLayer] = v; } … … 1343 1349 Int m_aaiCodedOffset[2][MAX_VIEW_NUM]; 1344 1350 1345 #if SONY_COLPIC_AVAILABILITY|QC_MVHEVC_B00461346 Int m_iViewOrderIdx;1347 #endif1348 1351 #if LGE_ILLUCOMP_B0045 1349 1352 Bool m_bApplyIC; 1350 1353 #endif 1351 1354 #if INTER_VIEW_VECTOR_SCALING_C0115|QC_MVHEVC_B0046 1355 Bool m_bIVScalingFlag; 1356 Int m_iViewOrderIdx; // will be changed to view_id 1357 #endif 1352 1358 public: 1353 1359 TComSlice(); … … 1433 1439 Int getRefViewId ( RefPicList e, Int iRefIdx) { return m_aiRefViewIdList[e][iRefIdx]; } 1434 1440 TComPic* getTexturePic () const { return m_pcTexturePic; } 1435 #if SONY_COLPIC_AVAILABILITY1436 Int getViewOrderIdx () { return m_iViewOrderIdx; }1437 #endif1438 1441 Int getDepth () { return m_iDepth; } 1439 1442 UInt getColDir () { return m_uiColDir; } … … 1485 1488 Void setRefViewId ( Int i, RefPicList e, Int iRefIdx ) { m_aiRefViewIdList[e][iRefIdx] = i; } 1486 1489 Void setTexturePic ( TComPic *pcTexturePic ) { m_pcTexturePic = pcTexturePic; } 1487 #if SONY_COLPIC_AVAILABILITY1488 Void setViewOrderIdx ( Int i ) { m_iViewOrderIdx = i; }1489 #endif1490 1490 Void setNumRefIdx ( RefPicList e, Int i ) { m_aiNumRefIdx[e] = i; } 1491 1491 Void setPic ( TComPic* p ) { m_pcPic = p; } … … 1661 1661 Void setNewRefIdx ( RefPicList e, Int i ) { m_aiNewRefIdx[e] = i; } 1662 1662 #endif 1663 1663 #if INTER_VIEW_VECTOR_SCALING_C0115 1664 Void setIVScalingFlag( Bool val ) { m_bIVScalingFlag = val; } 1665 Bool getIVScalingFlag() { return m_bIVScalingFlag; } 1666 Void setViewOrderIdx ( Int i ) { m_iViewOrderIdx = i; } // will be changed to view_id 1667 Int getViewOrderIdx () { return m_iViewOrderIdx; } // will be changed to view_id 1668 #endif 1664 1669 protected: 1665 1670 TComPic* xGetRefPic (TComList<TComPic*>& rcListPic, UInt uiPOC); -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibCommon/TypeDef.h
r254 r262 148 148 ///// ***** OTHERS ********* 149 149 #define LG_ZEROINTRADEPTHRESI_A0087 1 // JCT2-A0087 150 #define SONY_COLPIC_AVAILABILITY 1150 #define INTER_VIEW_VECTOR_SCALING_C0115 1 // JCT2-C0115 Inter-view vector scaling for TMVP & flag 151 151 #define HHI_FULL_PEL_DEPTH_MAP_MV_ACC 1 // full-pel mv accuracy for depth maps 152 152 #define VIDYO_VPS_INTEGRATION 1 -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibDecoder/TDecCAVLC.cpp
r254 r262 1458 1458 } 1459 1459 } 1460 #if INTER_VIEW_VECTOR_SCALING_C0115 1461 READ_FLAG( uiCode, "inter_view_vector_scaling_flag" ); pcVPS->setIVScalingFlag( uiCode ? true:false); 1462 #endif 1460 1463 } 1461 1464 -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibDecoder/TDecTop.cpp
r254 r262 254 254 m_iMaxRefPicNum = 0; 255 255 m_uiValidPS = 0; 256 #if SONY_COLPIC_AVAILABILITY257 m_iViewOrderIdx = 0;258 #endif259 256 #if ENC_DEC_TRACE 260 257 g_hTrace = fopen( "TraceDec.txt", "wb" ); … … 687 684 } 688 685 689 #if SONY_COLPIC_AVAILABILITY690 m_apcSlicePilot->setViewOrderIdx( m_apcSlicePilot->getSPS()->getViewOrderIdx());691 #endif692 693 686 #if NAL_REF_FLAG 694 687 m_apcSlicePilot->setReferenced(nalu.m_nalRefFlag); … … 768 761 xGetNewPicBuffer (m_apcSlicePilot, pcPic); 769 762 770 #if SONY_COLPIC_AVAILABILITY 771 pcPic->setViewOrderIdx( m_apcSlicePilot->getSPS()->getViewOrderIdx() ); 772 #endif 773 763 #if INTER_VIEW_VECTOR_SCALING_C0115 764 pcPic->setViewOrderIdx( m_apcSlicePilot->getVPS()->getViewOrderIdx(nalu.m_layerId) ); // will be changed to view_id 765 #endif 774 766 /* transfer any SEI messages that have been received to the picture */ 775 767 pcPic->setSEIs(m_SEIs); … … 996 988 #endif 997 989 998 #if SONY_COLPIC_AVAILABILITY990 #if INTER_VIEW_VECTOR_SCALING_C0115 999 991 #if VIDYO_VPS_INTEGRATION 1000 pcSlice->setViewOrderIdx( pcSlice->getVPS()->getViewOrderIdx(nalu.m_layerId) ); 992 pcSlice->setViewOrderIdx( pcSlice->getVPS()->getViewOrderIdx(nalu.m_layerId) ); // will be changed to view_id 1001 993 #else 1002 994 pcSlice->setViewOrderIdx( pcPic->getViewOrderIdx() ); 1003 995 #endif 996 #endif 997 998 #if INTER_VIEW_VECTOR_SCALING_C0115 999 pcSlice->setIVScalingFlag( pcSlice->getVPS()->getIVScalingFlag()); 1004 1000 #endif 1005 1001 -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibDecoder/TDecTop.h
r210 r262 118 118 119 119 SEImessages *m_SEIs; ///< "all" SEI messages. If not NULL, we own the object. 120 121 #if SONY_COLPIC_AVAILABILITY122 Int m_iViewOrderIdx;123 #endif124 120 125 121 // functional classes … … 187 183 Void setIsDepth( Bool isDepth ) { m_isDepth = isDepth; } 188 184 189 #if SONY_COLPIC_AVAILABILITY190 Void setViewOrderIdx(Int i) { m_iViewOrderIdx = i ;}191 Int getViewOrderIdx() { return m_iViewOrderIdx ; }192 #endif193 194 185 #if DEPTH_MAP_GENERATION 195 186 TComDepthMapGenerator* getDepthMapGenerator () { return &m_cDepthMapGenerator; } -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibEncoder/TEncCavlc.cpp
r254 r262 498 498 } 499 499 } 500 #if INTER_VIEW_VECTOR_SCALING_C0115 501 WRITE_FLAG( pcVPS->getIVScalingFlag(), "inter_view_vector_scaling_flag" ); 502 #endif 500 503 } 501 504 -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibEncoder/TEncCfg.h
r210 r262 170 170 Bool m_bUseIC; 171 171 #endif 172 #if INTER_VIEW_VECTOR_SCALING_C0115 173 Bool m_bUseIVS; 174 #endif 172 175 #if SAO_UNIT_INTERLEAVING 173 176 Int m_maxNumOffsetsPerPic; … … 713 716 Void setUseIC ( Bool bVal ) {m_bUseIC = bVal;} 714 717 Bool getUseIC () {return m_bUseIC;} 718 #endif 719 #if INTER_VIEW_VECTOR_SCALING_C0115 720 Void setUseIVS ( Bool bVal ) {m_bUseIVS = bVal;} 721 Bool getUseIVS () {return m_bUseIVS;} 715 722 #endif 716 723 #if SAO_UNIT_INTERLEAVING … … 869 876 Void setCodedOffset ( Int** p ) { m_aaiCodedOffset = p; } 870 877 871 #if SONY_COLPIC_AVAILABILITY872 Int getViewOrderIdx () { return m_iViewOrderIdx; } 878 #if INTER_VIEW_VECTOR_SCALING_C0115 879 Int getViewOrderIdx () { return m_iViewOrderIdx; } // will be changed to view_id 873 880 #endif 874 881 }; -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibEncoder/TEncGOP.cpp
r254 r262 259 259 pcSlice->setViewId( m_pcEncTop->getViewId() ); 260 260 pcSlice->setIsDepth( m_pcEncTop->getIsDepth() ); 261 #if INTER_VIEW_VECTOR_SCALING_C0115 262 pcSlice->setIVScalingFlag( m_pcEncTop->getUseIVS() ); 263 #endif 261 264 262 265 m_pcEncTop->getSPS()->setDisInter4x4(m_pcEncTop->getDisInter4x4()); -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibEncoder/TEncSlice.cpp
r254 r262 190 190 rpcSlice->setPOC( uiPOCCurr ); 191 191 192 #if SONY_COLPIC_AVAILABILITY193 rpcSlice->setViewOrderIdx(m_pcCfg->getViewOrderIdx()); 192 #if INTER_VIEW_VECTOR_SCALING_C0115 193 rpcSlice->setViewOrderIdx(m_pcCfg->getViewOrderIdx()); // will be changed to view_id 194 194 #endif 195 195 #if LGE_ILLUCOMP_B0045 -
branches/HTM-5.1-dev2-Sony/source/Lib/TLibEncoder/TEncTop.cpp
r210 r262 404 404 pcPicYuvOrg->copyToPic( pcPicCurr->getPicYuvOrg() ); 405 405 406 #if SONY_COLPIC_AVAILABILITY407 pcPicCurr->setViewOrderIdx(m_iViewOrderIdx); 406 #if INTER_VIEW_VECTOR_SCALING_C0115 407 pcPicCurr->setViewOrderIdx(m_iViewOrderIdx); // will be changed to view_id 408 408 #endif 409 409 pcPicCurr->setScaleOffset( m_aaiCodedScale, m_aaiCodedOffset );
Note: See TracChangeset for help on using the changeset viewer.