Changeset 380 in SHVCSoftware
- Timestamp:
- 4 Sep 2013, 09:46:07 (11 years ago)
- Location:
- branches/SHM-3.1-dev/source/Lib
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-3.1-dev/source/Lib/TLibCommon/TypeDef.h
r378 r380 42 42 43 43 #define SYNTAX_BYTES 10 ///< number of bytes taken by syntaxes per 4x4 block [RefIdxL0(1byte), RefIdxL1(1byte), MVxL0(2bytes), MVyL0(2bytes), MVxL1(2bytes), MVyL1(2bytes)] 44 45 #define HM12_RANDOM_ACCESS 1 46 #define RANDOM_ACCESS_SEI_FIX 1 44 47 45 48 #if SVC_EXTENSION -
branches/SHM-3.1-dev/source/Lib/TLibDecoder/TDecTop.cpp
r377 r380 77 77 m_pBLSyntaxFile = NULL; 78 78 #endif 79 79 #if HM12_RANDOM_ACCESS 80 m_prevSliceSkipped = false; 81 m_skippedPOC = 0; 82 #endif 80 83 } 81 84 … … 620 623 #endif 621 624 625 #if HM12_RANDOM_ACCESS 626 // set POC for dependent slices in skipped pictures 627 if(m_apcSlicePilot->getDependentSliceSegmentFlag() && m_prevSliceSkipped) 628 { 629 m_apcSlicePilot->setPOC(m_skippedPOC); 630 } 631 #endif 632 622 633 // Skip pictures due to random access 623 634 if (isRandomAccessSkipPicture(iSkipFrame, iPOCLastDisplay)) 624 635 { 636 #if HM12_RANDOM_ACCESS 637 m_prevSliceSkipped = true; 638 m_skippedPOC = m_apcSlicePilot->getPOC(); 639 #endif 625 640 return false; 626 641 } … … 628 643 if (isSkipPictureForBLA(iPOCLastDisplay)) 629 644 { 645 #if HM12_RANDOM_ACCESS 646 m_prevSliceSkipped = true; 647 m_skippedPOC = m_apcSlicePilot->getPOC(); 648 #endif 630 649 return false; 631 650 } 651 652 #if HM12_RANDOM_ACCESS 653 // clear previous slice skipped flag 654 m_prevSliceSkipped = false; 655 #endif 632 656 633 657 // exit when a new picture is found … … 1135 1159 if(nalUnitType == NAL_UNIT_SUFFIX_SEI) 1136 1160 { 1161 #if RANDOM_ACCESS_SEI_FIX 1162 if (m_prevSliceSkipped) // No need to decode SEI messages of a skipped access unit 1163 { 1164 return; 1165 } 1166 #endif 1137 1167 #if M0043_LAYERS_PRESENT_SEI 1138 1168 m_seiReader.parseSEImessage( bs, m_pcPic->getSEIs(), nalUnitType, m_parameterSetManagerDecoder[m_layerId].getActiveVPS(), m_parameterSetManagerDecoder[m_layerId].getActiveSPS() ); -
branches/SHM-3.1-dev/source/Lib/TLibDecoder/TDecTop.h
r377 r380 107 107 Bool m_bFirstSliceInSequence; 108 108 #endif 109 #if HM12_RANDOM_ACCESS 110 Bool m_prevSliceSkipped; 111 Int m_skippedPOC; 112 #endif 109 113 110 114 #if SVC_EXTENSION
Note: See TracChangeset for help on using the changeset viewer.