- Timestamp:
- 27 Jan 2014, 17:15:16 (11 years ago)
- Location:
- branches/SHM-5.0-dev/source
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncCfg.cpp
r550 r559 80 80 { 81 81 m_acLayerCfg[layer].setAppEncCfg(this); 82 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG83 m_ilSampleOnlyPred[layer] = 0;84 #endif85 82 } 86 83 memset( m_scalabilityMask, 0, sizeof(m_scalabilityMask) ); … … 629 626 #endif 630 627 ("EnableElRapB,-use-rap-b", m_elRapSliceBEnabled, 0, "Set ILP over base-layer I picture to B picture (default is P picture)") 631 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG632 ("IlSampleOnlyPred%d", m_ilSampleOnlyPred, 0, MAX_LAYERS, "Set inter_layer_sample_pred_only_flag for all slices")633 #endif634 628 #else //SVC_EXTENSION 635 629 ("InputFile,i", cfg_InputFile, string(""), "Original YUV input file name") -
branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncCfg.h
r540 r559 72 72 #if AVC_SYNTAX 73 73 Char* m_BLSyntaxFile; ///< input syntax file 74 #endif75 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG76 Int m_ilSampleOnlyPred[ MAX_LAYERS ];77 74 #endif 78 75 #if N0120_MAX_TID_REF_CFG -
branches/SHM-5.0-dev/source/App/TAppEncoder/TAppEncTop.cpp
r556 r559 220 220 m_acTEncTop[layer].setMFMEnabledFlag(layer == 0 ? false : true); 221 221 #endif 222 #endif223 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG224 m_acTEncTop[layer].setIlSampleOnlyPred( layer == 0 ? 0 : m_ilSampleOnlyPred[layer] );225 222 #endif 226 223 #endif -
branches/SHM-5.0-dev/source/Lib/TLibCommon/TComSlice.cpp
r557 r559 128 128 m_colRefLayerIdx = 0; 129 129 #endif 130 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG131 m_numSamplePredRefLayers = 0;132 m_interLayerSamplePredOnlyFlag = false;133 #endif134 130 #endif //SVC_EXTENSION 135 131 … … 180 176 #else 181 177 m_numILRRefIdx = 0; 182 #endif183 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG184 m_numSamplePredRefLayers = 0;185 m_interLayerSamplePredOnlyFlag = false;186 178 #endif 187 179 #endif … … 410 402 pcRefPic->getPicYuvRec()->extendPicBorder(); 411 403 RefPicSetStCurr0[NumPocStCurr0] = pcRefPic; 412 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG413 if( !m_interLayerSamplePredOnlyFlag || pcRefPic->getLayerId() < getLayerId())414 #endif415 404 NumPocStCurr0++; 416 405 pcRefPic->setCheckLTMSBPresent(false); … … 426 415 pcRefPic->getPicYuvRec()->extendPicBorder(); 427 416 RefPicSetStCurr1[NumPocStCurr1] = pcRefPic; 428 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG429 if( !m_interLayerSamplePredOnlyFlag || pcRefPic->getLayerId() < getLayerId())430 #endif431 417 NumPocStCurr1++; 432 418 pcRefPic->setCheckLTMSBPresent(false); … … 442 428 pcRefPic->getPicYuvRec()->extendPicBorder(); 443 429 RefPicSetLtCurr[NumPocLtCurr] = pcRefPic; 444 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG445 if( !m_interLayerSamplePredOnlyFlag || pcRefPic->getLayerId() < getLayerId())446 #endif447 430 NumPocLtCurr++; 448 431 } … … 623 606 624 607 if (m_eSliceType == I_SLICE) 625 {608 { 626 609 ::memset( m_apcRefPicList, 0, sizeof (m_apcRefPicList)); 627 610 ::memset( m_aiNumRefIdx, 0, sizeof ( m_aiNumRefIdx )); 628 611 629 612 return; 630 613 } 631 614 632 615 assert(numPocTotalCurr > 0); 633 616 634 617 m_aiNumRefIdx[0] = getNumRefIdx(REF_PIC_LIST_0); 635 618 m_aiNumRefIdx[1] = getNumRefIdx(REF_PIC_LIST_1); 636 619 } 637 620 638 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG639 if( m_interLayerSamplePredOnlyFlag && getLayerId() )640 {641 m_aiNumRefIdx[0] = m_aiNumRefIdx[0] > m_activeNumILRRefIdx ? m_activeNumILRRefIdx : m_aiNumRefIdx[0];642 m_aiNumRefIdx[1] = m_aiNumRefIdx[1] > m_activeNumILRRefIdx ? m_activeNumILRRefIdx : m_aiNumRefIdx[1];643 }644 #endif645 646 621 Int cIdx = 0; 647 622 for ( i=0; i<NumPocStCurr0; i++, cIdx++) -
branches/SHM-5.0-dev/source/Lib/TLibCommon/TComSlice.h
r558 r559 1923 1923 #endif 1924 1924 #endif 1925 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG1926 Int m_numSamplePredRefLayers;1927 Bool m_interLayerSamplePredOnlyFlag;1928 #endif1929 1925 #if POC_RESET_FLAG 1930 1926 Bool m_bPocResetFlag; … … 2202 2198 #endif 2203 2199 2204 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG2205 Int getNumSamplePredRefLayers ( ) { return m_numSamplePredRefLayers; }2206 Void setNumSamplePredRefLayers ( Int i ) { m_numSamplePredRefLayers = i; }2207 Bool getInterLayerSamplePredOnlyFlag( ) { return m_interLayerSamplePredOnlyFlag; }2208 Void setInterLayerSamplePredOnlyFlag( Bool val ) { m_interLayerSamplePredOnlyFlag = val; }2209 #endif2210 2211 2200 #if M0457_COL_PICTURE_SIGNALING 2212 2201 Void setNumMotionPredRefLayers(int i) { m_numMotionPredRefLayers = i; } -
branches/SHM-5.0-dev/source/Lib/TLibCommon/TypeDef.h
r558 r559 171 171 #define M0457_COL_PICTURE_SIGNALING 1 172 172 #define N0139_POSITION_ROUNDING_OFFSET 1 ///< JCTVC-N0139: offset for collocated block in motion mapping 173 #endif174 175 #if !VPS_EXTN_DIRECT_REF_LAYERS || !M0457_PREDICTION_INDICATIONS || !JCTVC_M0458_INTERLAYER_RPS_SIG176 #define M0457_IL_SAMPLE_PRED_ONLY_FLAG 0 ///< shall be 0, JCTVC-N0107177 #else178 #define M0457_IL_SAMPLE_PRED_ONLY_FLAG 0 ///< shall be 0, JCTVC-N0107179 173 #endif 180 174 -
branches/SHM-5.0-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r556 r559 2185 2185 } 2186 2186 #endif 2187 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG2188 rpcSlice->setInterLayerSamplePredOnlyFlag( false );2189 if( rpcSlice->getNumSamplePredRefLayers() > 0 && rpcSlice->getActiveNumILRRefIdx() > 0 )2190 {2191 READ_FLAG( uiCode, "inter_layer_sample_pred_only_flag" );2192 rpcSlice->setInterLayerSamplePredOnlyFlag( uiCode > 0 );2193 }2194 #endif2195 2187 #else 2196 2188 if( rpcSlice->getLayerId() > 0 ) -
branches/SHM-5.0-dev/source/Lib/TLibDecoder/TDecTop.cpp
r554 r559 851 851 m_apcSlicePilot->setNumMotionPredRefLayers(m_numMotionPredRefLayers); 852 852 #endif 853 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG854 m_apcSlicePilot->setNumSamplePredRefLayers( getNumSamplePredRefLayers() );855 #endif856 853 #endif 857 854 m_cEntropyDecoder.decodeSliceHeader (m_apcSlicePilot, &m_parameterSetManagerDecoder); -
branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncCavlc.cpp
r556 r559 1671 1671 } 1672 1672 } 1673 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG1674 if( pcSlice->getNumSamplePredRefLayers() > 0 && pcSlice->getActiveNumILRRefIdx() > 0 )1675 {1676 WRITE_FLAG( pcSlice->getInterLayerSamplePredOnlyFlag(), "inter_layer_sample_pred_only_flag" );1677 }1678 #endif1679 1673 #endif 1680 1674 -
branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncCu.cpp
r540 r559 462 462 testInter = false; 463 463 } 464 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG465 if( pcSlice->getInterLayerSamplePredOnlyFlag() )466 {467 testInter = false;468 }469 #endif470 464 } 471 465 #endif -
branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncGOP.cpp
r558 r559 696 696 #endif 697 697 #endif 698 }699 #endif700 701 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG702 pcSlice->setNumSamplePredRefLayers( m_pcEncTop->getNumSamplePredRefLayers() );703 pcSlice->setInterLayerSamplePredOnlyFlag( 0 );704 if( pcSlice->getNumSamplePredRefLayers() > 0 && pcSlice->getActiveNumILRRefIdx() > 0 )705 {706 if( m_pcEncTop->getIlSampleOnlyPred() > 0 )707 {708 pcSlice->setInterLayerSamplePredOnlyFlag( true );709 }710 698 } 711 699 #endif … … 1306 1294 } 1307 1295 1308 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG1309 if (pcSlice->getSliceType() == B_SLICE && m_pcEncTop->getIlSampleOnlyPred() == 0)1310 #else1311 1296 if (pcSlice->getSliceType() == B_SLICE) 1312 #endif1313 1297 { 1314 1298 #if !SVC_EXTENSION -
branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncTop.h
r540 r559 137 137 Bool m_bMFMEnabledFlag; 138 138 #endif 139 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG140 Int m_ilSampleOnlyPred;141 #endif142 139 UInt m_numScaledRefLayerOffsets; 143 140 #if O0098_SCALED_REF_LAYER_ID … … 237 234 Bool getMFMEnabledFlag() {return m_bMFMEnabledFlag;} 238 235 #endif 239 #if M0457_IL_SAMPLE_PRED_ONLY_FLAG240 Void setIlSampleOnlyPred( Int i ) { m_ilSampleOnlyPred = i; }241 Int getIlSampleOnlyPred() { return m_ilSampleOnlyPred; }242 #endif243 236 #if AVC_SYNTAX 244 237 Void setBLSyntaxFile( fstream* pFile ) { m_pBLSyntaxFile = pFile; }
Note: See TracChangeset for help on using the changeset viewer.