Changeset 973 in 3DVCSoftware for branches/HTM-11.1-dev0/source/App/TAppDecoder/TAppDecTop.h
- Timestamp:
- 6 Jul 2014, 04:44:14 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-11.1-dev0/source/App/TAppDecoder/TAppDecTop.h
r964 r973 68 68 TComPicLists m_ivPicLists; ///< picture buffers of decoder instances 69 69 Bool m_layerInitilizedFlags[ MAX_NUM_LAYER_IDS ]; ///< for layerwise startup 70 #if H_MV_HLS_7_VPS_P0300_2771 70 TComVPS* m_vps; ///< active VPS 72 #endif73 71 #else 74 72 TDecTop m_cTDecTop; ///< decoder class … … 79 77 Int m_pocLastDisplay [ MAX_NUM_LAYERS ]; ///< last POC in display order 80 78 Bool m_reconOpen [ MAX_NUM_LAYERS ]; ///< reconstruction file opened 79 Bool m_markedForOutput; 81 80 #else 82 81 Int m_iPOCLastDisplay; ///< last POC in display order 83 82 #endif 84 #if H_MV_HLS_7_VPS_P0300_2785 Bool m_markedForOutput;86 #endif87 88 83 89 84 #if H_3D … … 107 102 Void xWriteOutput ( TComList<TComPic*>* pcListPic, Int layerId, Int tId ); ///< write YUV to file 108 103 109 #if H_MV_HLS_7_VPS_P0300_27110 104 Void xMarkForOutput ( Bool allLayersDecoded, Int pocLastPic, Int layerIdLastPic ); 111 Void xMarkAltOutPic ( Int targetOutputLayer, Int pocLastPic ) 112 { 113 Int optLayerIdxInVps = m_vps->getLayerIdInNuh( targetOutputLayer ); 114 Int highestNuhLayerId = -1; 115 TComPic* picWithHighestNuhLayerId = NULL; 116 for (Int dIdx = 0; dIdx < m_numDecoders; dIdx++) 117 { 118 Int curLayerId = m_tDecTop[dIdx]->getLayerId(); 119 Int curLayerIdxInVps = m_vps->getLayerIdInNuh( curLayerId ); 120 if ( m_vps->getInDirectDependencyFlag(optLayerIdxInVps, curLayerIdxInVps ) ) 121 { 122 TComPic* curPic = m_ivPicLists.getPic( curLayerId, pocLastPic ); 123 if (curPic != NULL) 124 { 125 if (curPic->getReconMark() && curPic->getPicOutputFlag() ) 126 { 127 curPic->setOutputMark ( false ); 128 curPic->setPicOutputFlag( false ); 129 if ( curLayerId > highestNuhLayerId) 130 { 131 highestNuhLayerId = curLayerId ; 132 picWithHighestNuhLayerId = curPic; 133 } 134 } 135 } 136 } 137 } 138 if ( picWithHighestNuhLayerId != NULL ) 139 { 140 picWithHighestNuhLayerId->setPicOutputFlag(true); 141 picWithHighestNuhLayerId->setOutputMark (true); 142 } 143 } 144 #endif 105 Void xMarkAltOutPic ( Int targetOutputLayer, Int pocLastPic ); 145 106 146 107 Void xFlushOutput ( TComList<TComPic*>* pcListPic, Int layerId ); ///< flush all remaining decoded pictures to file
Note: See TracChangeset for help on using the changeset viewer.