Ticket #976: RASL_BLA.patch
File RASL_BLA.patch, 1.5 KB (added by jonatan, 11 years ago) |
---|
-
source/Lib/TLibDecoder/TDecTop.cpp
307 307 m_apcSlicePilot->setTLayerInfo(nalu.m_temporalId); 308 308 309 309 m_cEntropyDecoder.decodeSliceHeader (m_apcSlicePilot, &m_parameterSetManagerDecoder); 310 if (m_apcSlicePilot->isNextSlice()) 311 { 312 // Skip pictures due to random access 313 if (isRandomAccessSkipPicture(iSkipFrame, iPOCLastDisplay)) 314 { 315 return false; 316 } 317 // Skip TFD pictures associated with BLA/BLANT pictures 318 if (isSkipPictureForBLA(iPOCLastDisplay)) 319 { 320 return false; 321 } 322 } 323 310 324 // exit when a new picture is found 311 325 if (m_apcSlicePilot->isNextSlice() && m_apcSlicePilot->getPOC()!=m_prevPOC && !m_bFirstSliceInSequence) 312 326 { … … 325 339 m_prevPOC = m_apcSlicePilot->getPOC(); 326 340 } 327 341 m_bFirstSliceInSequence = false; 328 if (m_apcSlicePilot->isNextSlice())329 {330 // Skip pictures due to random access331 if (isRandomAccessSkipPicture(iSkipFrame, iPOCLastDisplay))332 {333 return false;334 }335 // Skip TFD pictures associated with BLA/BLANT pictures336 if (isSkipPictureForBLA(iPOCLastDisplay))337 {338 return false;339 }340 }341 342 //detect lost reference picture and insert copy of earlier frame. 342 343 Int lostPoc; 343 344 while((lostPoc=m_apcSlicePilot->checkThatAllRefPicsAreAvailable(m_cListPic, m_apcSlicePilot->getRPS(), true, m_pocRandomAccess)) > 0)