Changeset 964 in 3DVCSoftware for trunk/source/App/TAppDecoder/TAppDecTop.h
- Timestamp:
- 5 Jul 2014, 05:16:45 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/App/TAppDecoder/TAppDecTop.h
r872 r964 68 68 TComPicLists m_ivPicLists; ///< picture buffers of decoder instances 69 69 Bool m_layerInitilizedFlags[ MAX_NUM_LAYER_IDS ]; ///< for layerwise startup 70 70 #if H_MV_HLS_7_VPS_P0300_27 71 TComVPS* m_vps; ///< active VPS 72 #endif 71 73 #else 72 74 TDecTop m_cTDecTop; ///< decoder class … … 80 82 Int m_iPOCLastDisplay; ///< last POC in display order 81 83 #endif 84 #if H_MV_HLS_7_VPS_P0300_27 85 Bool m_markedForOutput; 86 #endif 87 88 82 89 #if H_3D 83 90 FILE* m_pScaleOffsetFile; … … 99 106 #if H_MV 100 107 Void xWriteOutput ( TComList<TComPic*>* pcListPic, Int layerId, Int tId ); ///< write YUV to file 108 109 #if H_MV_HLS_7_VPS_P0300_27 110 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 145 101 146 Void xFlushOutput ( TComList<TComPic*>* pcListPic, Int layerId ); ///< flush all remaining decoded pictures to file 102 147 Int xGetDecoderIdx ( Int layerId, Bool createFlag = false );
Note: See TracChangeset for help on using the changeset viewer.