Changeset 296 in SHVCSoftware for branches/SHM-2.1-dev/source/App/TAppEncoder
- Timestamp:
- 20 Jun 2013, 17:44:29 (12 years ago)
- Location:
- branches/SHM-2.1-dev/source/App/TAppEncoder
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-2.1-dev/source/App/TAppEncoder/TAppEncCfg.cpp
r294 r296 843 843 ("ConstantPicRateIdc", cfg_constantPicRateIdc, string(""), "List of constant picture rate IDCs; include non-negative number even if corresponding flag is 0") 844 844 #endif 845 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 846 ("AdaptiveResolutionChange", m_adaptiveResolutionChange, 0, "Adaptive resolution change frame number. Should coincide with EL RAP picture. (0: disable)") 847 #endif 845 848 ; 846 849 … … 2137 2140 } 2138 2141 #endif 2142 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 2143 if (m_adaptiveResolutionChange > 0) 2144 { 2145 xConfirmPara(m_numLayers != 2, "Adaptive resolution change works with 2 layers only"); 2146 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"); 2147 } 2148 #endif 2139 2149 #undef xConfirmPara 2140 2150 if (check_failed) … … 2175 2185 printf("Multiview : %d\n", m_scalabilityMask[0] ); 2176 2186 printf("Scalable : %d\n", m_scalabilityMask[1] ); 2187 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 2188 printf("Adaptive Resolution Change : %d\n", m_adaptiveResolutionChange ); 2189 #endif 2177 2190 for(UInt layer=0; layer<m_numLayers; layer++) 2178 2191 { -
branches/SHM-2.1-dev/source/App/TAppEncoder/TAppEncCfg.h
r292 r296 369 369 Int* m_constantPicRateIdc; ///< Indicates constant picture rate idc for various sub-layers 370 370 #endif 371 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 372 Int m_adaptiveResolutionChange; ///< Indicate adaptive resolution change frame 373 #endif 371 374 public: 372 375 TAppEncCfg(); -
branches/SHM-2.1-dev/source/App/TAppEncoder/TAppEncTop.cpp
r292 r296 515 515 } 516 516 #endif 517 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 518 m_acTEncTop[layer].setAdaptiveResolutionChange( m_adaptiveResolutionChange ); 519 #endif 517 520 } 518 521 } … … 1031 1034 vps->setMaxOneActiveRefLayerFlag(maxDirectRefLayers > 1 ? false : true); 1032 1035 #endif 1036 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 1037 vps->setSingleLayerForNonIrapFlag(m_adaptiveResolutionChange > 0 ? true : false); 1038 #endif 1033 1039 #else 1034 1040 m_cTEncTop.init(); … … 1150 1156 #endif 1151 1157 1158 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 1159 if (m_adaptiveResolutionChange) 1160 { 1161 for(UInt layer = 0; layer < m_numLayers; layer++) 1162 { 1163 TComList<TComPicYuv*>::iterator iterPicYuvRec; 1164 for (iterPicYuvRec = m_acListPicYuvRec[layer].begin(); iterPicYuvRec != m_acListPicYuvRec[layer].end(); iterPicYuvRec++) 1165 { 1166 TComPicYuv* recPic = *(iterPicYuvRec); 1167 recPic->setReconstructed(false); 1168 } 1169 } 1170 } 1171 #endif 1172 1152 1173 // loop through frames in one GOP 1153 1174 for ( UInt iPicIdInGOP=0; iPicIdInGOP < (bFirstFrame? 1:m_iGOPSize); iPicIdInGOP++ ) … … 1416 1437 { 1417 1438 TComPicYuv* pcPicYuvRec = *(iterPicYuvRec++); 1439 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 1440 if (!m_acLayerCfg[layer].getReconFile().empty() && pcPicYuvRec->isReconstructed()) 1441 #else 1418 1442 if (!m_acLayerCfg[layer].getReconFile().empty()) 1443 #endif 1419 1444 { 1420 1445 m_acTVideoIOYuvReconFile[layer].write( pcPicYuvRec, m_acLayerCfg[layer].getConfLeft(), m_acLayerCfg[layer].getConfRight(), … … 1430 1455 list<AccessUnit>::const_iterator iterBitstream = accessUnits.begin(); 1431 1456 1457 #if M0040_ADAPTIVE_RESOLUTION_CHANGE 1458 for ( i = 0; i < iNumEncoded && iterBitstream != accessUnits.end(); i++ ) 1459 #else 1432 1460 for ( i = 0; i < iNumEncoded; i++ ) 1461 #endif 1433 1462 { 1434 1463 const AccessUnit& au = *(iterBitstream++);
Note: See TracChangeset for help on using the changeset viewer.