Changeset 1130 in SHVCSoftware for branches/SHM-dev/source/App
- Timestamp:
- 7 Jul 2015, 03:13:38 (10 years ago)
- Location:
- branches/SHM-dev/source/App/TAppEncoder
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/App/TAppEncoder/TAppEncCfg.cpp
r1128 r1130 1685 1685 ("SEITemporalMotionVectorPredictionConstraints", m_TMVPConstraintsSEIEnabled, 0, "Control generation of TMVP constrants SEI message") 1686 1686 #endif 1687 #if M0040_ADAPTIVE_RESOLUTION_CHANGE1688 1687 ("AdaptiveResolutionChange", m_adaptiveResolutionChange, 0, "Adaptive resolution change frame number. Should coincide with EL RAP picture. (0: disable)") 1689 #endif1690 1688 #if R0071_IRAP_EOS_CROSS_LAYER_IMPACTS 1691 1689 ("LayerSwitchOffBegin%d", cfg_layerSwitchOffBegin, 0, MAX_LAYERS, "Switch layer %d off after given poc") … … 4349 4347 } 4350 4348 #endif //VPS_EXTN_DIRECT_REF_LAYERS 4351 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 4352 if (m_adaptiveResolutionChange > 0)4349 4350 if( m_adaptiveResolutionChange > 0 ) 4353 4351 { 4354 4352 xConfirmPara(m_numLayers != 2, "Adaptive resolution change works with 2 layers only"); 4355 4353 xConfirmPara(m_acLayerCfg[1].m_iIntraPeriod == 0 || (m_adaptiveResolutionChange % m_acLayerCfg[1].m_iIntraPeriod) != 0, "Adaptive resolution change must happen at enhancement layer RAP picture"); 4356 4354 } 4357 #endif 4358 4359 if (m_adaptiveResolutionChange > 0) 4355 4356 if( m_adaptiveResolutionChange > 0 ) 4360 4357 { 4361 4358 xConfirmPara(m_crossLayerIrapAlignFlag != 0, "Cross layer IRAP alignment must be disabled when using adaptive resolution change."); 4362 4359 } 4363 if (m_skipPictureAtArcSwitch) 4360 4361 if( m_skipPictureAtArcSwitch ) 4364 4362 { 4365 4363 xConfirmPara(m_adaptiveResolutionChange <= 0, "Skip picture at ARC switching only works when Adaptive Resolution Change is active (AdaptiveResolutionChange > 0)"); … … 4497 4495 printf("Auxiliary pictures : %d\n", m_scalabilityMask[AUX_ID] ); 4498 4496 #endif 4499 #if M0040_ADAPTIVE_RESOLUTION_CHANGE4500 4497 printf("Adaptive Resolution Change : %d\n", m_adaptiveResolutionChange ); 4501 #endif4502 4498 printf("Skip picture at ARC switch : %d\n", m_skipPictureAtArcSwitch ); 4503 4499 printf("Align picture type : %d\n", m_crossLayerPictureTypeAlignFlag ); -
branches/SHM-dev/source/App/TAppEncoder/TAppEncCfg.h
r1128 r1130 473 473 Void xPrintUsage (); ///< print usage 474 474 #if SVC_EXTENSION 475 #if M0040_ADAPTIVE_RESOLUTION_CHANGE476 475 Int m_adaptiveResolutionChange; ///< Indicate adaptive resolution change frame 477 #endif478 476 Bool m_skipPictureAtArcSwitch; ///< Indicates that when ARC up-switching is performed the higher layer picture is a skip picture 479 477 #if REPN_FORMAT_IN_VPS -
branches/SHM-dev/source/App/TAppEncoder/TAppEncTop.cpp
r1128 r1130 787 787 } 788 788 789 #if M0040_ADAPTIVE_RESOLUTION_CHANGE790 789 m_acTEncTop[layer].setAdaptiveResolutionChange ( m_adaptiveResolutionChange ); 791 #endif792 790 #if R0071_IRAP_EOS_CROSS_LAYER_IMPACTS 793 791 m_acTEncTop[layer].setLayerSwitchOffBegin (m_acLayerCfg[layer].m_layerSwitchOffBegin); … … 1769 1767 } 1770 1768 } 1771 #if M0040_ADAPTIVE_RESOLUTION_CHANGE1772 1769 vps->setSingleLayerForNonIrapFlag(m_adaptiveResolutionChange > 0 ? true : false); 1773 #endif1774 1770 vps->setHigherLayerIrapSkipFlag(m_skipPictureAtArcSwitch); 1775 1771 … … 2095 2091 #endif 2096 2092 2097 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 2098 if (m_adaptiveResolutionChange) 2093 if( m_adaptiveResolutionChange ) 2099 2094 { 2100 2095 for(UInt layer = 0; layer < m_numLayers; layer++) … … 2108 2103 } 2109 2104 } 2110 #endif2111 2105 2112 2106 // loop through frames in one GOP … … 2509 2503 TComPicYuv* pcPicYuvRecBottom = *(iterPicYuvRec++); 2510 2504 2511 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 2512 if (!m_acLayerCfg[layer].getReconFile().empty() && pcPicYuvRecTop->isReconstructed() && pcPicYuvRecBottom->isReconstructed()) 2513 #else 2514 if (!m_acLayerCfg[layer].getReconFile().empty()) 2515 #endif 2505 if( !m_acLayerCfg[layer].getReconFile().empty() && pcPicYuvRecTop->isReconstructed() && pcPicYuvRecBottom->isReconstructed() ) 2516 2506 { 2517 2507 #if REPN_FORMAT_IN_VPS … … 2538 2528 { 2539 2529 TComPicYuv* pcPicYuvRec = *(iterPicYuvRec++); 2540 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 2541 if (!m_acLayerCfg[layer].getReconFile().empty() && pcPicYuvRec->isReconstructed()) 2542 #else 2543 if (!m_acLayerCfg[layer].getReconFile().empty()) 2544 #endif 2530 if( !m_acLayerCfg[layer].getReconFile().empty() && pcPicYuvRec->isReconstructed() ) 2545 2531 { 2546 2532 #if REPN_FORMAT_IN_VPS … … 2564 2550 list<AccessUnit>::const_iterator iterBitstream = accessUnits.begin(); 2565 2551 2566 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 2567 for ( i = 0; i < iNumEncoded/2 && iterBitstream != accessUnits.end(); i++ ) 2568 #else 2569 for ( i = 0; i < iNumEncoded/2; i++ ) 2570 #endif 2552 for( i = 0; i < iNumEncoded/2 && iterBitstream != accessUnits.end(); i++ ) 2571 2553 { 2572 2554 const AccessUnit& auTop = *(iterBitstream++); … … 2585 2567 list<AccessUnit>::const_iterator iterBitstream = accessUnits.begin(); 2586 2568 2587 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 2588 for ( i = 0; i < iNumEncoded && iterBitstream != accessUnits.end(); i++ ) 2589 #else 2590 for ( i = 0; i < iNumEncoded; i++ ) 2591 #endif 2569 for( i = 0; i < iNumEncoded && iterBitstream != accessUnits.end(); i++ ) 2592 2570 { 2593 2571 const AccessUnit& au = *(iterBitstream++);
Note: See TracChangeset for help on using the changeset viewer.