Ticket #1101: SVN_HEVCSoftware_trunk_multiple_cvs_fix_additional.patch
File SVN_HEVCSoftware_trunk_multiple_cvs_fix_additional.patch, 2.7 KB (added by jackh, 11 years ago) |
---|
-
C:/Users/JSH/Documents/SVN/P8005_Hevc/trunk/hm/source/App/TAppDecoder/TAppDecTop.cpp
109 109 110 110 // main decoder loop 111 111 Bool recon_opened = false; // reconstruction file not yet opened. (must be performed after SPS is seen) 112 Bool bEOS=false; 112 113 113 114 while (!!bitstreamFile) 114 115 { … … 138 139 else 139 140 { 140 141 read(nalu, nalUnit); 142 if (nalu.m_nalUnitType==NAL_UNIT_EOS) bEOS=true; 141 143 if( (m_iMaxTemporalLayer >= 0 && nalu.m_temporalId > m_iMaxTemporalLayer) || !isNaluWithinTargetDecLayerIdSet(&nalu) ) 142 144 { 143 145 if(bPreviousPictureDecoded) … … 186 188 || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_IDR_N_LP 187 189 || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_BLA_N_LP 188 190 || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_BLA_W_RADL 189 || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_BLA_W_LP ) ) 191 || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_BLA_W_LP 192 || (bEOS && nalu.m_nalUnitType==NAL_UNIT_CODED_SLICE_CRA) )) 193 190 194 { 195 bEOS=false; 191 196 xFlushOutput( pcListPic ); 192 197 } 193 198 // write reconstruction to file -
C:/Users/JSH/Documents/SVN/P8005_Hevc/trunk/hm/source/Lib/TLibDecoder/TDecTop.cpp
257 257 std::tr1::shared_ptr<TComSPS> sps = m_parameterSetManagerDecoder.getSPS(pps->getSPSId()); 258 258 assert (sps); 259 259 260 Bool spsChanged=sps!=m_parameterSetManagerDecoder.getActiveSPS();261 260 if (false == m_parameterSetManagerDecoder.activatePPS(m_apcSlicePilot->getPPSId(),m_apcSlicePilot->isIRAP())) 262 261 { 263 262 printf ("Parameter set activation failed!"); … … 294 293 g_uiMaxCUDepth = sps->getMaxCUDepth(); 295 294 g_uiAddCUDepth = max (0, sps->getLog2MinCodingBlockSize() - (Int)sps->getQuadtreeTULog2MinSize() ); 296 295 297 if (spsChanged)298 {299 for (TComList<TComPic *>::iterator It=m_cListPic.begin(); It!=m_cListPic.end(); ) {300 TComList<TComPic *>::iterator CIt=It++;301 (*CIt)->destroy();302 delete *CIt;303 m_cListPic.erase(CIt);304 }305 }306 307 296 for (Int i = 0; i < sps->getLog2DiffMaxMinCodingBlockSize(); i++) 308 297 { 309 298 sps->setAMPAcc( i, sps->getUseAMP() );